Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

XÓA tất cả các chủ đề trùng lặp với một vài điều kiện

Trong MySQL , bạn không thể chỉ định bảng đích cho một DML hoạt động trong một truy vấn con (trừ khi bạn lồng nó sâu hơn một cấp, nhưng trong trường hợp này, bạn sẽ không nhận được kết quả đáng tin cậy và không thể sử dụng các truy vấn con tương quan).

Sử dụng 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;

Tạo chỉ mục về các chủ đề topics (object_id, title, topic_id) để điều này hoạt động nhanh chóng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi với truy vấn Symfony:Dự kiến ​​Literal, đã nhận ''

  2. Tại sao id auto_increment không tăng từng cái một, làm thế nào để đặt nó?

  3. Có quy ước đặt tên cho MySQL không?

  4. Đặt hàng qua FIELD trong MYSQL

  5. Làm cách nào để thay đổi MariaDB thành MySQL trong XAMPP?