Kemas kini Jadual MySQL dalam Penyata Multi-Join
Apabila berurusan dengan berbilang gabungan dalam MySQL, memahami sintaks yang berbeza untuk mengemas kini gabungan meja adalah penting. Tidak seperti dalam SQL Server, MySQL menggunakan pendekatan yang berbeza.
Masalah:
Melaksanakan operasi kemas kini pada jadual yang terlibat dalam siri cantuman boleh mencabar apabila yang dikehendaki jadual bukan yang pertama dalam susunan penyertaan.
Sampel Pertanyaan:
Mari kita pertimbangkan pertanyaan hipotesis:
UPDATE b FROM tableA a JOIN tableB b ON a.a_id = b.a_id JOIN tableC c ON b.b_id = c.b_id SET b.val = a.val+c.val WHERE a.val > 10 AND c.val > 10;
Penyelesaian:
Dalam MySQL, sintaks UPDATE dengan JOIN berfungsi secara berbeza . Jadual yang akan dikemas kini tidak dinyatakan secara eksplisit dalam penyata; sebaliknya, ia disimpulkan daripada klausa SET. Oleh itu, pertanyaan yang betul ialah:
UPDATE tableA a JOIN tableB b ON a.a_id = b.a_id JOIN tableC c ON b.b_id = c.b_id SET b.val = a.val+c.val WHERE a.val > 10 AND c.val > 10;
Inti Utama:
Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini Jadual dalam Kenyataan Multi-Join MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!