Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memadam Baris dari Jadual Berdasarkan ID Padanan Menggunakan SQL JOINs?

Bagaimana untuk Memadam Baris dari Jadual Berdasarkan ID Padanan Menggunakan SQL JOINs?

Barbara Streisand
Barbara Streisandasal
2025-01-05 13:33:40908semak imbas

How to Delete Rows from a Table Based on Matching IDs Using SQL JOINs?

Padam Baris dalam Jadual Berdasarkan ID Padanan Menggunakan JOIN

Padam operasi dalam SQL boleh digunakan untuk mengalih keluar baris tertentu daripada jadual. Dalam senario di mana anda ingin memadamkan baris daripada jadual berdasarkan ID yang sepadan dalam jadual lain, adalah mungkin untuk menggunakan operasi JOIN untuk melaksanakan tugas ini.

Pendekatan Berasaskan JOIN

Pertanyaan berikut menggunakan operasi JOIN untuk memadamkan baris daripada jadual1 yang mempunyai ID yang sepadan dalam jadual2:

DELETE t1 
FROM Table1 t1
JOIN Table2 t2 ON t1.ID = t2.ID;

Penjelasan:

  • Pernyataan DELETE menyatakan bahawa baris akan dipadamkan daripada jadual bernama 't1'.
  • Klausa JOIN memautkan jadual1 ('t1') ke jadual2 ('t2') berdasarkan kesamaan Lajur 'ID'.
  • Baris dalam jadual1 yang mempunyai ID yang sepadan dalam jadual2 akan dipadamkan.

Pendekatan Alternatif:

Sebagai alternatif, operasi yang sama boleh dicapai menggunakan pertanyaan berikut:

DELETE FROM table1
WHERE ID IN (SELECT ID FROM table2);

Kaedah ini menggunakan subquery untuk memilih ID daripada jadual2 dan kemudian menggunakan operator IN untuk memadankan ID dalam jadual1. Walau bagaimanapun, pendekatan berasaskan JOIN biasanya dianggap lebih cekap dan lebih mudah dibaca.

Menggunakan Alias

Adalah disyorkan untuk menggunakan alias jadual (seperti 't1' dan 't2' dalam pertanyaan JOIN) untuk mengelakkan kekeliruan dan mengelakkan pemadaman tidak sengaja semua baris daripada jadual1 kerana tidak lengkap menyerlahkan.

Atas ialah kandungan terperinci Bagaimana untuk Memadam Baris dari Jadual Berdasarkan ID Padanan Menggunakan SQL JOINs?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn