连接查询
注意区别以下三种情况
1.SELECT*2.FROMweather, cities3.WHEREcity =name;1.SELECT*2.FROMweather3.LEFTOUTERJOINcitiesON(weather.city = cities.name);1.SELECTW1.city, W1.temp_loASlow, W1.temp_hiAShigh,2.W2.city, W2.temp_loASlow, W2.temp_hiAShigh3.FROMweather W1, weather W24.WHEREW1.temp_lo < W2.temp_lo5.ANDW1.temp_hi > W2.temp_hi;聚集函数使用下WHERE 和 HAVING 的基本区别
WHERE 在分组和聚集计算之前选取输入行(它控制哪些行进入聚集计算),而 HAVING 在分组和聚集之后选取输出行。因此,WHERE 子句不能包含聚集函数;因为试图用聚集函数判断那些行将要输入给聚集运算是没有意义的。相反,HAVING 子句总是包含聚集函数。当然,你可以写不使用聚集的 HAVING 子句,但这样做没什么好处,因为同样的条件可以更有效地用于 WHERE 阶段。
本文介绍了SQL中连接查询的不同类型及其应用场景,并对比了LEFT OUTER JOIN与基本连接的区别。此外,还详细解释了WHERE和HAVING子句在使用聚集函数时的作用及差异。
1万+

被折叠的 条评论
为什么被折叠?



