having和where的区别; having是在分组操作执行后,对分组后的数据进行过滤。where是在分组操作执行前,对分组前的数据,只能使用表原始列进行条件过滤having后面可以使用聚合函数,where后面不可以使用聚合函数。当一条SQL语句中,既有where又有group by\having时,先执行where,在执行group by,最后在执行having.