首頁 >資料庫 >mysql教程 >為什麼使用 INNER JOIN 的 MySQL UPDATE 查詢會產生語法錯誤?

為什麼使用 INNER JOIN 的 MySQL UPDATE 查詢會產生語法錯誤?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-11 03:38:10887瀏覽

Why Does My MySQL UPDATE Query with INNER JOIN Produce a Syntax Error?

使用 MySQL 的內連接更新查詢:排除語法錯誤

執行以下 MySQL 更新查詢時遇到語法錯誤:

UPDATE b
SET b.mapx = g.latitude,
    b.mapy = g.longitude
FROM business AS b
INNER JOIN business_geocode g ON b.business_id = g.business_id
WHERE (b.mapx = '' OR b.mapx = 0) AND
      g.latitude > 0

這是查詢的修訂版本,應該消除語法錯誤:

UPDATE business AS b
INNER JOIN business_geocode AS g ON b.business_id = g.business_id
SET b.mapx = g.latitude,
  b.mapy = g.longitude
WHERE (b.mapx = '' OR b.mapx = 0) AND
  g.latitude > 0

評估

原始資料表定義的別名不正確;它應該在您的查詢中為b ,因為您在那裡。這是唯一的文法問題。

附加註解

您的錯誤訊息遺失。提供它將有助於查明問題的確切原因。此外,驗證表中的欄位類型(例如,mapx 和 mapy)是否與您嘗試插入的資料相符。

以上是為什麼使用 INNER JOIN 的 MySQL UPDATE 查詢會產生語法錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn