mysql where/having区别

mysql> select 2-1 as a,password from mysql.user where user='root' having a>0;
+---+-------------------------------------------+
| a | password                                  |
+---+-------------------------------------------+
| 1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
+---+-------------------------------------------+
1 row in set (0.00 sec)

mysql> select 2-1 as a,password from mysql.user where user='root' having a>1;
Empty set (0.00 sec)

mysql>

 只要区别就是:

where只对数据库里的所有数据进行查询

having只对结果集进行查询

数据库 --select--> ---where--> 结果 --having--> 结果
原文地址:https://www.cnblogs.com/perl6/p/7057633.html