A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 何圣东 黑马帝   /  2012-2-13 20:40  /  2009 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

SQLServer中having与where有什么区别?
今天继续在学杨老师的视频...

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

3 个回复

正序浏览
where是对初始数据进行过滤,而having则是对分组后的数据进行过滤后面可跟着聚合函数,where之后则不能!
回复 使用道具 举报
在where中是不能使用聚合函数的,必须使用having,having要位于group by语句之后,
group by 和having之间的关系类似于select和where之间的关系,而where和having之间
的主要区别是各自的对象不同,where是从数据表或视图中检索满足条件的记录的,而having是从分组汇总的结果中检索满足条件的结果的
回复 使用道具 举报
论坛中有人提问过了,可以看看
WHERE后面跟的是条件.  只有满足条件的数据才会显示出来,比如日期在上个月到昨天之间之类的HAVING是跟在GROUP BY 分组后面的.你可以理解为GROUP BY的WHERE,他对GROUP BY分组后的数据进行条件筛选

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马