色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql去重保留id小的

錢斌斌2年前8瀏覽0評論

在MySQL中,經常需要進行去重操作。但是有時候我們需要保留重復數據中ID小的一條記錄,這時候就需要使用一些SQL語句進行篩選操作。

SELECT MIN(id), name, COUNT(*) FROM table_name GROUP BY name HAVING COUNT(*) >1;

上面的查詢語句中,首先使用MIN函數來選擇ID最小的一條記錄,然后通過GROUP BY name對重復的記錄進行分組,最后使用HAVING COUNT(*) >1篩選出重復的記錄。

如果需要刪除重復數據,可以使用以下語句:

DELETE FROM table_name WHERE id NOT IN (SELECT MIN(id) FROM table_name GROUP BY name);

上面的語句中,使用NOT IN子句排除掉保留的一條記錄,然后通過子查詢選出需要保留的記錄。

除了以上方法,還可以使用INSERT IGNORE語句來保留ID小的一條記錄:

INSERT IGNORE INTO new_table_name (id, name) SELECT MIN(id), name FROM table_name GROUP BY name;

上面的語句中,使用INSERT IGNORE忽略重復的記錄,然后通過子查詢選出需要保留的記錄,并將其插入新的表中。

以上就是關于MySQL去重保留ID小的一些操作,可以根據具體需求選擇不同的方法。