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

Bagaimana cara menghapus dari beberapa tabel di MySQL?

Gunakan JOIN di DELETE pernyataan.

DELETE p, pa
      FROM pets p
      JOIN pets_activities pa ON pa.id = p.pet_id
     WHERE p.order > :order
       AND p.pet_id = :pet_id

Atau Anda dapat menggunakan...

DELETE pa
      FROM pets_activities pa
      JOIN pets p ON pa.id = p.pet_id
 WHERE p.order > :order
   AND p.pet_id = :pet_id

...untuk menghapus hanya dari pets_activities

Lihat ini .

Untuk penghapusan tabel tunggal, namun dengan integritas referensial, ada cara lain untuk melakukannya dengan EXISTS , NOT EXISTS , IN , NOT IN dan lain-lain. Tetapi yang di atas tempat Anda menentukan dari tabel mana yang akan dihapus dengan alias sebelum FROM klausa dapat membuat Anda keluar dari beberapa tempat yang cukup ketat dengan lebih mudah. Saya cenderung menjangkau EXISTS dalam 99% kasus dan kemudian ada 1% di mana sintaks MySQL ini membutuhkan waktu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql mendapatkan catatan atau data harian, mingguan, bulanan dan tahunan

  2. MySQL menghapus catatan duplikat tetapi tetap terbaru

  3. JSON_REPLACE() – Ganti Nilai dalam Dokumen JSON di MySQL

  4. Nilai peningkatan dalam kueri pembaruan MySQL

  5. SQLSTATE[HY093]:Nomor parameter tidak valid:parameter tidak ditentukan