Apabila memproses pelbagai jadual dalam pangkalan data hubungan, kadang -kadang perlu untuk mengenal pasti dan memadam garis tanpa padanan yang sepadan dalam satu jadual dalam satu jadual. Proses ini biasanya dipanggil "memadam penyertaan terpencil."
Pertimbangkan adegan berikut:
Anda mempunyai dua jadual, "fail" dan "gumpalan", yang mana "files.id" boleh digunakan untuk menyambung ke "blob.fileid".
Gunakan gabungan kiri dan 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>
<code class="language-sql">DELETE FROM BLOB WHERE NOT EXISTS(SELECT NULL FROM FILES f WHERE f.id = fileid)</code>
<code class="language-sql">DELETE FROM BLOB WHERE fileid NOT IN (SELECT f.id FROM FILES f)</code>
Atas ialah kandungan terperinci Bagaimana untuk memadam barisan anak yatim di SQL menggunakan gabungan kiri, wujud, atau tidak dalam subqueries?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!