您的位置:首页 > 其它

group by与having

2016-01-07 12:57 274 查看
1.group by

group by 有一个原则,就是 select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面



select id,account from user_userinfo GROUP BY account

此语句执行时会报错

但是对于mysql数据库来说会得到结果:



原因:mysql集成limit 1在group by中,由于innoDB引擎默认是按主键id升序排列,故limit 1以后就是此结果。

2.having

HAVING 子句对 GROUP BY 子句设置条件的方式与 WHERE 和 SELECT 的交互方式类似。WHERE 搜索条件在进行分组操作之前应用;而 HAVING 搜索条件在进行分组操作之后应用。HAVING 语法与 WHERE 语法类似,但 HAVING 可以包含聚合函数。HAVING 子句可以引用选择列表中显示的任意项。





大小: 2.3 KB





大小: 1.8 KB

查看图片附件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: