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

SQL DELETE với THAM GIA một bảng khác cho điều kiện WHERE

Do sự cố triển khai khóa, MySQL không cho phép tham chiếu bảng bị ảnh hưởng với DELETE hoặc UPDATE .

Bạn cần tạo JOIN thay vào đó tại đây:

DELETE  gc.*
FROM    guide_category AS gc 
LEFT JOIN
        guide AS g 
ON      g.id_guide = gc.id_guide
WHERE   g.title IS NULL

hoặc chỉ sử dụng NOT IN :

DELETE  
FROM    guide_category AS gc 
WHERE   id_guide NOT IN
        (
        SELECT  id_guide
        FROM    guide
        )


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Loại lập chỉ mục tốt nhất khi có mệnh đề LIKE

  2. CURRENT_TIME Ví dụ - MySQL

  3. Làm cách nào để trích xuất từ ​​thứ n và đếm số lần xuất hiện của từ trong một chuỗi MySQL?

  4. Tại sao kết quả từ một truy vấn SQL không trở lại theo thứ tự tôi mong đợi?

  5. Chọn tất cả các cột bắt đầu bằng XXX bằng ký tự đại diện?