where 是约束条件 先找到表 from t1 where 条件 : 指的是把表里的数据,一条一条的记录取出来 然后 group by 分组,
having 是过滤条件 指记录已经出来
聚合 count,max,min,avg,group_cancat(把组内的你想要的字段全部列举到一行).
聚合
- count
- max
- min
- avg
- group_cancat
where 条件:
- 可以用运算符
- between 80 and 100
- in(80,90,100) 值时80或者90或者100
- like'ff%' : pattern 可以是%或者_ ,%代表任意字符,_代表一个字符.
- 逻辑运算符:在多个条件直接可以用逻辑运算符 and or not
create table day43.employee select * from day42.employee;拷贝表
alter table employee rename emp;改名
having : 过滤
where 之后数据出来了,有了数据之后你才可以过滤它
执行优先级
from-->where-->group by-->聚合-->having
没有 where 条件,就把所有数据取出来.
order by关键字 : 排序
升序( asc )
降序( desc )
用在 having 后
select * from 表 order by age asc,salary desc;( 先按照年龄从小到大,完后再按照薪资从大到小排).
limit 限制打印几条
例子:
select * from 表 limit 0,3;
从第0条开始往后取三条. 1,2,3
select * from 表 limit 3,3;
从第三条开始,往后取三条. 4,5,6
说白了 limit 就是 : 分页功能