dengan cekap mengeluarkan rekod yatim dalam MySQL: Tiga Kaedah Terbukti
Panduan ini menunjukkan tiga teknik yang berkesan untuk memadamkan baris anak yatim dalam penyertaan MySQL -Database yang tidak mempunyai rekod yang sepadan dalam jadual yang berkaitan berdasarkan ID yang dikongsi.kaedah 1: memanfaatkan gabungan kiri dan null
Pendekatan ini menggunakan
untuk menggabungkan data dari dua jadual berdasarkan lajur ID tertentu. Barisan Orphan, yang dikenal pasti oleh nilai dalam lajur ID Jadual yang bergabung, kemudian disasarkan untuk penghapusan. LEFT JOIN
NULL
<code class="language-sql">DELETE b FROM BLOB b LEFT JOIN FILES f ON f.id = b.fileid WHERE f.id IS NULL;</code>
Kaedah ini menggunakan subquery dengan
untuk memeriksa kehadiran rekod yang sepadan dalam jadual yang berkaitan. Barisan yang tidak mempunyai pertandingan ditandakan untuk penghapusan.
NOT EXISTS
<code class="language-sql">DELETE FROM BLOB WHERE NOT EXISTS (SELECT NULL FROM FILES f WHERE f.id = fileid);</code>
Pendekatan mudah ini menggunakan
untuk membandingkan ID secara langsung. Baris dengan ID tidak hadir dari jadual yang berkaitan dikenal pasti dan dipadam.
NOT IN
<code class="language-sql">DELETE FROM BLOB WHERE fileid NOT IN (SELECT f.id FROM FILES f);</code>
Sentiasa laksanakan
pernyataan dalam urus niaga untuk memastikan integriti data. Ini membolehkan pengembalian semula sekiranya berlaku kesilapan atau akibat yang tidak diingini. Gunakan sebelum DELETE
dan START TRANSACTION
(atau DELETE
) selepas itu. COMMIT
Atas ialah kandungan terperinci Bagaimana untuk Memadam Baris Orphan dalam MySQL Menggunakan JOIN, NOT EXISTS, atau NOT IN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!