HI我有查詢選擇了主鍵(id)= 1或外鍵= 1的所有行。這是自己的連接。用JOIN自己更新MySql
選擇:
SELECT f2.wz AS wz FROM d7x6r_magazyn_faktura_zakupowa f
LEFT JOIN (SELECT id,id_glowna, wz FROM d7x6r_magazyn_faktura_zakupowa )AS f2
ON(((f2.id = f.id_glowna OR f2.id = f.id OR f2.id_glowna = f.id OR f2.id_glowna = f.id_glowna)
AND f2.id_glowna <> 0)
OR (f2.id = f.id OR f2.id = f.id_glowna))
WHERE f.id = 1 OR f2.id_glowna = 1;
現在我需要在所有行更新單元WZ爲0。我嘗試使用:
UPDATE d7x6r_magazyn_faktura_zakupowa f
LEFT JOIN (SELECT id,id_glowna, wz FROM d7x6r_magazyn_faktura_zakupowa )AS f2
ON(((f2.id = f.id_glowna OR f2.id = f.id OR f2.id_glowna = f.id OR f2.id_glowna = f.id_glowna)
AND f2.id_glowna <> 0)
OR (f2.id = f.id OR f2.id = f.id_glowna))
SET f2.wz = 0
WHERE f.id = 1 OR f2.id_glowna = 1;
但它不工作,因爲f2.wz無法更新。
「你可以加入上更新/插入/刪除,但不更新這些連接表中的記錄。「爲什麼不? – Strawberry