ホームページ >データベース >mysql チュートリアル >INNER JOIN を使用した MySQL UPDATE クエリで構文エラーが発生するのはなぜですか?

INNER JOIN を使用した MySQL UPDATE クエリで構文エラーが発生するのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-11 03:38:10886ブラウズ

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

Assessment

元のクエリには、ビジネス テーブルに対して誤って定義されたテーブル エイリアスがありました。そこにあるので、クエリには b であるはずです。構文上の問題はこれだけでした。

追加メモ

エラー メッセージがありません。それを提供すると、問題の正確な原因を特定するのに役立ちます。さらに、テーブル内のフィールド タイプ (mapx や mapy など) が、挿入しようとしているデータと一致していることを確認してください。

以上がINNER JOIN を使用した MySQL UPDATE クエリで構文エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。