mysql having和using使用

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;

 

posted @ 2019-02-19 12:52  花拾夕  阅读(443)  评论(0编辑  收藏  举报