Response 列のデータは =blahblahblahTYPE=ERRORblahblah
です。次に、以下のクエリを実行して、'ERROR' 文字列だけをターゲットにします。
SELECT substr(Response, instr(Response, 'ERROR'), 5)
FROM table
WHERE id = 721451
AND Status = 'false'
AND Response LIKE '%<status>Unknown</status>%'
AND date >= curdate();
上記のクエリは次を返します: ERROR
.
基本的に残りのデータを編集せずに更新ERROR
したい。SUCCESS
以下のクエリは機能しますか? これを行うより良い方法はありますか?
UPDATE table
SET Response = 'SUCCESS'
WHERE (
SELECT substr(Response, instr(Response, 'ERROR'), 5)
FROM table
WHERE id = 721451
AND Status = 'false'
AND Response LIKE '%<status>Unknown</status>%'
AND date >= curdate()
);
事前にご協力いただきありがとうございます。