sql 分组后根据条件去掉整组

GROUP  BY t.Id
HAVING  (count(ti.`Status`) != COUNT(IF(ti.`Status` = 16,1,NULL))) 
AND (COUNT(IF(ti.`Status` IN(2,4,8), 1, null)) < 1)

分组后
如果这组内的status都是16 那么这组过滤掉
如果这组内status包含包含 2 4 8 那么这组过滤掉
主要思路是count(null)

sql 分组后根据条件去掉整组

上一篇:【sql学习】经典面试50题-PostgreSQL语句练习


下一篇:jmeter接口测试 -- 数据库操作(mysql)