表结构如图: 需求:id和name name可能会重复多次。但是ID只有一个,需要找到重复次数最多的名字和ID。可能重复最多的有好几个名字,每个名字都有不同的ID 。

SELECT t.id,t.name,a.nu FROM t LEFT JOIN (SELECT id,NAME,COUNT() AS nu FROM t GROUP BY NAME) a ON t.name=a.name JOIN (SELECT id,NAME,COUNT() AS num FROM t GROUP BY NAME ORDER BY num DESC LIMIT 1) c WHERE a.nu=c.num

有更好的写法求告知。