面试官:说说WHERE,HAVING和ON的区别?
SQL数据库开发
共 1553字,需浏览 4分钟
·
2020-08-08 23:09
点击关注上方“SQL数据库开发”,
设为“置顶或星标”,第一时间送达干货
最近有小伙伴私信我:今天面试有道题把我一下子问懵了,让我说出WHERE,HAVING和ON的区别。
觉得这个问题很有价值给小伙伴们分享一下。
注:以下测试和结论基于SQL Server数据库。
这三个关键字我们平时经常使用,他们一个共同点是:都可以用来过滤数据。
那不同点是什么呢?我们先来看看WHERE和HAVING的区别
(8)SELECT (9)DISTINCT (11)<Top Num> <select list>
(1)FROM [left_table]
(3)<join_type> JOIN <right_table>
(2) ON <join_condition>
(4)WHERE <where_condition>
(5)GROUP BY <group_by_list>
(6)WITH <CUBE | RollUP>
(7)HAVING <having_condition>
(10)ORDER BY <order_by_list>
SELECT 省份,COUNT(*) 人数
FROM Customers
WHERE COUNT(*)>1
GROUP BY 省份
SELECT 省份,COUNT(*) 人数
FROM Customers
GROUP BY 省份
HAVING COUNT(*)>1
结果如下:
——End——
后台回复关键字:1024,获取一份精心整理的技术干货 后台回复关键字:进群,带你进入高手如云的交流群。 推荐阅读
这是一个能学到技术的公众号,欢迎关注
评论