您的位置:首页 > 数据库 > MySQL

mysql having与where的区别(个人理解)

2016-06-12 16:22 399 查看
having跟where都能作为刷选条件

但having可以作为mysql进行逻辑运算后的条件where只能作为字段筛选条件

例如:

用having筛选

select count(Friend.userID) from User left join Friend on User.id = Friend.userID group by User.id having count(Friend.userID) > 1;

查询Uesr表中每个用户在Friend里面的好友数量超过1个

用where筛选

select count(Friend.userID) from User left join Friend on User.id = Friend.userID where count(Friend.userID) > 1 group by User.id;

但是having是聚合语句     where的话效率更快

having就用在当where判断不足的时候补全
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: