我一直在尝试更新表transsit
的{{1}}列中的多个字段值。
我有一个名为tracking_details
的表,该表由两列tracking_details
和id
示例transsit
表:-
tracking_details
在这里,我想将id | transsit
------------------
1 | rec
2 | rec
3 | sen
4 |
5 | rec
更改为rec
等于received
的{{1}}
到目前为止,我所做的是:
id
然后我遇到以下错误:
1,2 and 5
答案 0 :(得分:4)
UPDATE tracking_details
SET transsit = 'received'
WHERE id IN (select id from tracking_details where transsit='rec');
对于多行更新,请使用IN
而不是=
,因为=
总是只有一行,或者您可以简单地使用join。
UPDATE tracking_details a
JOIN tracking_details b
ON a.id=b.id
SET a.transsit = 'received'
Where b.transsit='rec';
Furthurmore查看查询,您可以使用单个查询完成
UPDATE tracking_details
SET transsit = 'received'
WHERE transsit='rec';
答案 1 :(得分:2)
您可以简单地使用UPDATE
子句来创建WHERE
:
UPDATE tracking_details
SET transsit = 'received'
WHERE transsit = 'rec';