1、having
当用到聚合函数sum,count后,又需要筛选条件时,就可以考虑使用having,因为where是在聚合前筛选记录的,无法和统计函数一起使用,而having在聚合后筛选记录,可以和统计函数一起使用。having是和group by组合着用的。
SELECT cid, count(cid) AS cids FROM t_person_info WHERE cid <> 1 GROUP BY cid HAVING cids >= 2 #count(cid)统计的结果
ORDER BY cid DESC
2、using
using()用于两张表的join查询,要求using()指定的列在两个表中均存在,并使用之用于join的条件。
select a.*, b.* from a left join b using(colA);
等价于
select a.*, b.* from a left join b on a.colA = b.colA;