看起来 WHERE 和 HAVING 都有助于过滤行。我想知道我是否可以使用 WHERE ...和。
我有点困惑。
感谢您的帮助
答案 0 :(得分:30)
在分组操作发生之前,使用“WHERE”子句选择要包含在数据集中的行(GROUP BY)。您可以使用HAVING子句在分组后过滤行。
因此,如果您要汇总总和或最大值或最小值,则可以使用HAVING谓词检查候选行上的聚合值。
答案 1 :(得分:8)
有一些细微之处和错综复杂,但快速描述是一种比较:HAVING是GROUP BY,因为SELECT是。
换句话说,如果你认为HAVING是在GROUP BY子句之后应用的WHERE子句,事情就会开始变得有意义。
答案 2 :(得分:7)
答案 3 :(得分:1)
您可以将Having语句与Group By一起使用,通常用作过滤聚合列的方法。
您可以获得更多信息here。
答案 4 :(得分:-1)
其中子句用于从整个数据库中筛选出行。 但 具有子句用于从特定的数据库组中过滤出行。 具有子句还可以帮助实现诸如最小/最大/平均值之类的汇总功能。
点击链接以获取更多详细信息 https://www.codeproject.com/Articles/25258/Where-Vs-Having-Difference-between-having-and-Wher