0

mysql 5.1 テーブルで重複する行を削除しようとしています

クエリは

delete from sessions o where exists (select * from sessions i where i.data=o.data and i.id<>o.id);

しかし、それは機能していないようです.mysqlの削除ステートメントにテーブルエイリアスを使用することはできないと読みましたが、これはどのように機能しますか:レコードの削除は機能しますか?

4

1 に答える 1

0

このクエリを試してください -

DELETE t1 FROM sessions t1
  JOIN (SELECT data, MIN(id) id FROM sessions GROUP BY data) t2
    ON t1.id <> t2.id AND t1.data = t2.data;
于 2012-07-30T15:39:57.923 に答える