次のようなアイテムを含むテーブルアイテムがあります
name
------
alpha
alpha
beta
charlie
charlie
この場合、重複行を削除する方法はありますが、1 つのレコードを残す必要があります。上のテーブルには主キーがありません。
次のようなアイテムを含むテーブルアイテムがあります
name
------
alpha
alpha
beta
charlie
charlie
この場合、重複行を削除する方法はありますが、1 つのレコードを残す必要があります。上のテーブルには主キーがありません。
これを試して
DELETE FROM item WHERE GREATEST(0,@num := IF(NAME = @NAME, @num + 1, 0),LEAST(0, LENGTH(@NAME := NAME)))>0
そのテーブルを再作成します。
RENAME TABLE `testTable` TO `testTable2`;
CREATE TABLE `testTable`
SELECT DISTINCT `name` FROM `testTable2`;
または、フィールドにUNIQUE INDEXを追加します。
ALTER IGNORE TABLE `tableName`
ADD UNIQUE INDEX (`name`)