MYSQL学习--------第二节笔记整理

一、数据库范式

1.概念:
制定表的原则。
2.应用数据库范式带来的好处:
(1)减少数据冗余;
(2)消除异常;
(3)让数据组织更加和谐。
3.五个范式:
(1)第一范式(1NF):字段不可再分,属性具有原子性(每一列保持原子特性);
(2)第二范式(2NF):每一列都和主键相关,除主键外的所有列都依赖于主键;
(3)第三范式(3NF):除主键外的所有列都依赖于主键;
(4)BC范式(BCNF):每个表只有一个候选键(候选键:不重复的属性);
(5)第四范式(4NF):消除表中的多值依赖。
4.并不是范式越高越好。范式越高,表越多,表多了会出现的问题:
(1)查询时需要连接多个表,增加了SQL查询的复杂度;
(2)查询时需要连接多个表,降低了数据库查询性能。

二、基本查询语句

1.查询所有字段:select * from 表名 where.....;
2.查询指定字段:

select 属性名1,属性名2,...... from 表名;

三、单表查询语句

1.带in关键字的查询

  select * from 表名 where ...... in(元素1,元素2,......);
  

2.带between and的范围查询

  
  select * from 表名 where ...... between 取值1 and 取值2;

3.带like的字符匹配查询

  select * from 表名 where ......like ' ....';

4.查询空值

select * from 表名 where ...... is null;

5.多条件查询

 select * from 表名 where 条件表达式1 and 条件表达式2;

6.带or 的多条件查询

 select * from 表名 where 条件表达式1 or 条件表达式2;

7.查询结果不重复

 select distinct 属性名 from 表名;

8.对查询结果排序

 select * from 表名 order by 属性名(asc/desc);

asc:升序 desc:降序
9.分组查询
(1)单独使用 group by ,结果只显示一个分组
select *from 表名 group by 属性;
(2)group by 关键字与group_concat()函数一起使用时,每个分组中指定字段都显示出来
select 属性,group concat( …)from 表 group by …;
(3)group by 与集合函数
例如用count():

              select 属性,count(......) from 表名 group by......;

集合函数包括:count()、sum()、avg()、max()和min()
(4)group by和having 一起使用
加上having可限制输出结果。
(having 表达式作用于分组后的记录,用于选择满足条件的组;where 作用于表或视图,是表和视图的查询条件)
10.用limit 限制查询结果的数量

   select * from 表名 limit 记录数;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值