SQL 中 Where 和 Having 子句的区别
mysqldatabasebig data analytics
在本文中,我们将了解 SQL 中 WHERE 子句和 HAVING 子句的区别。
WHERE 子句
它用于根据特定条件从表中筛选记录。
它可以在没有 ‘GROUP BY’ 子句的情况下使用。
它可以与行操作一起使用。
它不能包含聚合函数。
它可以与 ‘SELECT’、‘UPDATE’ 和 ‘DELETE’ 语句一起使用。
它在 ‘GROUP BY’ 之前使用子句。
它与单行函数一起使用,例如‘UPPER’、‘LOWER’。
HAVING 子句
它用于根据特定条件从组中筛选出记录。
它不能在没有‘GROUP BY’子句的情况下使用。
它与列操作一起使用。
它可以包含聚合函数。
它只能与‘SELECT’语句一起使用。
它在‘GROUP BY’之后使用子句。
它可以与多个行函数一起使用,例如‘SUM’、‘COUNT’。
以下是语法:
SELECT column1, column2 FROM table1, table2 WHERE [ conditions ] GROUP BY column1, column2 HAVING [ conditions ] ORDER BY column1, column2