DengQN·一个普通程序员;
mysql去重
2019-10-26 00:36 54
#相同#最小#查出#直接#代码#去除#留下#行

直接代码

SELECT
	id,
	koto 
FROM
	hitokoto 
WHERE
	koto IN ( SELECT t1.koto FROM hitokoto t1 GROUP BY t1.koto HAVING COUNT( 1 ) > 1 ) 
	AND id NOT IN ( SELECT MIN( id ) FROM hitokoto t1 GROUP BY t1.koto HAVING COUNT( 1 ) > 1 )

去除koto相同、留下id最小的。

查出相同的所有行,查出最小的那些,然后not in

好像有点慢。