
1:按降序得出第一和第二多的
(SELECT NAME,COUNT(1) amount
FROM temp
GROUP BY NAME
ORDER BY amount DESC
LIMIT 0,2
)
UNION
2:排除第一和第二,取其他的和
(SELECT ‘其他’,COUNT(1) amount
FROM temp t1
WHERE t1.name NOT IN (
SELECT t2.name
FROM (
SELECT NAME,COUNT(1) amount
FROM temp
GROUP BY NAME
ORDER BY amount DESC
LIMIT 0,2
)t2
))

留下评论