在多連接語句中更新MySQL 表
在MySQL 中處理多個連接時,了解更新連接的不同語法表至關重要。與 SQL Server 不同,MySQL 採用了獨特的方法。
問題:
當需要對涉及一系列聯接的表執行更新操作時,可能會遇到困難。表不是連接順序中的第一個表。
示例查詢:
讓我們考慮一個假設的查詢:
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;
解決方案:
在MySQL 中,帶有JOIN 的UPDATE 語法的工作方式不同。語句中沒有明確指定要更新的表;相反,它是從 SET 子句推斷出來的。因此,正確的查詢應該是:
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;
重點:
以上是如何在MySQL多連接語句中更新表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!