Mysql中HAVING的相关使用方法
having字句可以让我们筛选分组之后的各种数据,where字句在聚合前先筛选记录,也就是说作用在group by和having字句前。
而having子句在聚合后对组记录进行筛选。我的理解就是真实表中没有此数据,这些数据是通过一些函数产生的。
1.根据type类型查看总共有多少用户
mysql> select type,count(*) from ts_user group by type;
先以type把返回记录分成多个组,这就是GROUP BY的字面含义。分完组后,然后用聚合函数对每组中
的不同字段(一或多条记录)作运算。
2.显示每个类型的用户数量.仅显示用户数量大于14的类型。
mysql> select type,count(*) as count from ts_user group by type having count >14;
3、 having单独使用,与where类似
eg: 查询用户id=1000的用户信息
SELECT name,sex FROM `ts_user` having id = 1000 ;
SELECT name,sex FROM `ts_user` where id = 1000 ;
两个查询结果一样