首页 > 数据库 > SQL Server > 正文

SQL中Having与Where的区别

2024-08-31 01:03:40
字体:
来源:转载
供稿:网友
何时使用having where,请遵照下面的说明:WHERE语句在GROUP BY语句之前;SQL会在分组之前计算WHERE语句。HAVING语句在GROUP BY语句之后;SQL会在分组之后计算HAVING语句。
 

含义

where

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

having

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

// 下面这句是可以的SELECT COUNT(*) FROM AWHERE A.a1>0GROUP BY a2;
//但是下面就不行SELECT COUNT(*) FROM AWHERE A.a1>0 and count(*)>1GROUP BY a2;
//必须要改为havingSELECT COUNT(*) FROM AWHERE A.a1>0GROUP BY a2HAVING COUNT(*)>1


注:相关教程知识阅读请移步到MSSQL教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表