SQL中Having与Where的区别

编程学习 2021-07-05 16:50www.dzhlxh.cn编程入门
何时使用having where,请遵照狼蚁网站SEO优化的说明:WHERE语句在GROUP BY语句之前;SQL会在分组之前计算WHERE语句。HAVING语句在GROUP BY语句之后;SQL会在分组之后计算HAVING语句。

含义

where

在分组之前就进行选择操作

having

having在分组操作之后才进行选择操作,所以having可以选择聚合函数
eg:

// 狼蚁网站SEO优化这句是可以的
SELECT COUNT(*) FROM A
WHERE A.a1>0
GROUP BY a2;
//但是狼蚁网站SEO优化就不行
SELECT COUNT(*) FROM A
WHERE A.a1>0 and count(*)>1
GROUP BY a2;
//必须要改为having
SELECT COUNT(*) FROM A
WHERE A.a1>0
GROUP BY a2
HAVING COUNT(*)>1

Copyright © 2016-2025 www.dzhlxh.cn 金源码 版权所有 Power by

网站模板下载|网络推广|微博营销|seo优化|视频营销|网络营销|微信营销|网站建设|织梦模板|小程序模板