Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memadam Rekod Merentasi Pelbagai Jadual dalam MySQL Menggunakan SQL Joins?

Bagaimana untuk Memadam Rekod Merentasi Pelbagai Jadual dalam MySQL Menggunakan SQL Joins?

DDD
Lepaskan: 2025-01-20 17:08:11
asal
543 orang telah melayarinya

How to Delete Records Across Multiple Tables in MySQL Using SQL Joins?

Padam rekod menggunakan SQL JOIN dalam MySQL

Ikhtisar

Artikel ini meneroka penggunaan SQL JOIN untuk memadam rekod daripada berbilang jadual dalam MySQL. Khususnya, kami mengkaji senario di mana kami ingin memadamkan semua siaran yang berkaitan dengan pelanggan apabila ia dialih keluar daripada sistem.

Pernyataan Masalah

Andaikan kita mempunyai tiga jadual: pelanggan, projek dan jawatan. Jadual projek mempunyai client_id kunci asing yang merujuk kepada jadual pelanggan, dan jadual siaran mempunyai project_id kunci asing yang merujuk kepada jadual projek. Apabila pelanggan tertentu dipadamkan, kami mahu semua siaran yang dikaitkan dengan pelanggan itu dipadamkan.

Penyelesaian

Untuk ini, kami menggunakan SQL JOIN untuk memadamkan siaran secara tidak langsung. Berikut ialah kod yang dikemas kini:

<code class="language-sql">DELETE posts
FROM posts
INNER JOIN projects ON projects.project_id = posts.project_id
WHERE projects.client_id = :client_id;</code>
Salin selepas log masuk

Dalam pertanyaan ini, kami menggunakan INNER JOIN untuk menyatakan bahawa kami ingin memadamkan siaran yang mempunyai projek yang sepadan dalam jadual projek, di mana client_id sepadan dengan klien yang ingin kami padamkan.

Kaedah alternatif

Alternatif lain untuk memadamkan siaran ialah menggunakan pemadaman lata kunci asing. Ini melibatkan penambahan kekangan berikut pada jadual siaran:

<code class="language-sql">ALTER TABLE posts ADD FOREIGN KEY (project_id) REFERENCES projects(project_id) ON DELETE CASCADE;</code>
Salin selepas log masuk

Dengan kekangan ini, apabila anda memadamkan item, semua siaran yang dikaitkan dengan item itu akan dipadamkan juga secara automatik.

Atas ialah kandungan terperinci Bagaimana untuk Memadam Rekod Merentasi Pelbagai Jadual dalam MySQL Menggunakan SQL Joins?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan