Mysql where 和 having 区别
1. where 与 having 的区别:
where子句中不能使用分组函数
having子句中可以使用分组函数
where的执行顺序在having之前,因为where子句在 group by 子句之前,having 子句在 group by 之后
2. where 与 having 都可以用于对单表 或 结果集的筛选:
表1 province 如下:

表 2 city 如下

代码理解 :
select * from province where p_id =111; select * from province having p_id =111;
结果1 :

代码理解:
select * from province a inner join city b on a.p_id = b.p_id where p_name = '山西'; select * from province a inner join city b on a.p_id = b.p_id having p_name = '山西';
结果:

代码理解:
select * from city having count(c_id) > 1;

代码理解 :
select * from emp_info ei having salary between 3000 and 4000;
结果

钟声敲响了日落,柏油路跃过山坡,一直通向北方的是我们想象,长大后也未曾经过~

浙公网安备 33010602011771号