私は次のUPDATE
声明を持っています:
update MESSAGES set status=
(select (CASE
WHEN from_id='111111111'
THEN (CASE
WHEN status='A'
THEN 'S'
WHEN status='R'
THEN 'D'
END)
WHEN to_id='111111111'
THEN (CASE
WHEN status='A'
THEN 'R'
WHEN status='S'
THEN 'D'
END)
END)
as status_value)
where primary_key='236499681204'
and status_value not null ;
このクエリの問題は、最後の行でstatus_value
認識されないことです。最後の比較を削除すると、and status_value not null
動作します。上記のバージョンが機能するとは思いませんが、誰かが同じことを達成する代替案を教えてもらえますか?
AS
クエリでキーワードを使用しUPDATE
て変数を定義する方法はありますstatus_value
か?
編集
実際の要件は、 であるかどうかを確認するだけでなく、 である場合はstatus_value
更新を実行しないことです。null
null