1. ホーム
  2. sql

[解決済み] SQL Server 2008でテーブルのエイリアスを使用してUPDATE SQLを記述する方法は?

2022-02-15 23:57:04

質問

私は非常に基本的な UPDATE SQL -

UPDATE HOLD_TABLE Q SET Q.TITLE = 'TEST' WHERE Q.ID = 101;

このクエリは Oracle , Derby , MySQL - しかし SQLサーバー2008で失敗 というエラーが出てしまいます。

"Msg102、レベル15、ステート1、ライン1 'Q'の近くに不正な構文があります。

SQLから"Q"というエイリアスの出現をすべて削除すると、動作するようになりました。

しかし、エイリアスを使用する必要があります。

どのように解決するのですか?

SQL Serverで更新文にエイリアスを使用するための構文は以下のとおりです。

UPDATE Q
SET Q.TITLE = 'TEST'
FROM HOLD_TABLE Q
WHERE Q.ID = 101;

しかし、ここではエイリアスは必要ないはずです。