null的使用
-- is null -- is not null
单表操作
分组
-- 分组指的是:将所有记录按照某个相同字段进行归类 -- select 聚合函数, 选取的字段 from employee group by 分组的字段;
聚合函数
最大值
-- max(字段)
最小值
-- min(字段)
求和
-- sum(字段)
计数
-- count(字段)
平均数
-- avg(字段)
having
-- 表示对group by 之后的数据, 进行再一次的二次筛选
order by
排序
-- order by desc 降序 -- order by asc 升序,默认
limit
-- 分页 -- limit offset,size -- offset: 行数据索引 -- size: 取多少条数据
顺序
/* select * from 表名 where 条件 group by 条件 having 条件 order by 条件 limit 条件; */
多表操作
外键
- 减少占用的空间
- 只需要修改department表中一次, 其余的表中的数据就会相应的修改
一对多
-- constraint 外键名 foreign key (被约束的字段) references 约束的表(约束的字段)
多对多
两表间存在多对多的关系时,需要新建一张表来存储这种多对多的关系,并在新表中添加两个外键
一对一
在左表foreign右表的基础上,将左表的外键字段设置成unique
多表联查
-- mysql> select * from 表1 left join 表2 on 条件;