SQL查询中使用的两个关键字“ Where”和“ Having”都是用于根据给定条件过滤和汇总从数据库中检索到的数据。
根据两个关键字的特征,我们可以区分Where和Have,如下所示:
序号 | 键 | where | having |
---|---|---|---|
1 | 定义 | SQL查询中的WHERE子句为it返回的行指定搜索条件,并将行限制为特定的行集。如果用户希望根据某种特定的分类或条件获取特定的记录,则使用“ where”子句很有用。 | WHERE子句用于在选择表的行时指定所需条件(基于合计值)。 |
2 | 执行 | 根据子句的执行顺序,在执行GROUPBY CLAUSE之前以及在执行FROM子句之后,将执行WHERE子句。 | 另一方面,创建组后将执行HAVING子句。 |
3 | GroupBy兼容性 | WHERE子句可以与SQL查询中的GroupBy子句一起使用。 | 另一方面,Having子句与GroupBy子句不兼容。 |
4 | 行选择 | WHERE子句在对结果分组之前选择行。 | 另一方面,Having子句会在分组后选择行。 |
5 | 汇总功能 | WHERE子句不能包含聚合函数。 | 另一方面,HAVING子句可以包含聚合函数。 |