Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

HAPUS semua topik duplikat dengan beberapa syarat

Di MySQL , Anda tidak dapat menentukan tabel target ke DML operasi dalam subkueri (kecuali jika Anda menyarangkannya lebih dari satu tingkat, tetapi dalam kasus ini Anda tidak akan mendapatkan hasil yang andal dan tidak dapat menggunakan subkueri yang berkorelasi).

Gunakan JOIN :

DELETE  td
FROM    topics td
JOIN    topics ti
ON      ti.object_id = td.object_id
        AND ti.title = td.title
        AND ti.topic_id > td.topic_id;

Buat indeks pada topics (object_id, title, topic_id) agar ini bekerja dengan cepat.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rekomendasi penyetelan kinerja MySQL my.cnf

  2. Bagaimana cara memperbarui nilai kunci asing di database mysql

  3. MySQL:Mengkloning database MySQL pada instance MySql yang sama

  4. Buat kueri penyisipan dari array MySQL dan PHP

  5. Akses ditolak; Anda memerlukan (setidaknya satu dari) hak istimewa SUPER untuk operasi ini