![](/img/trans.png)
[英]MySql : How to update column of table by checking for multiple fields in where clause?
[英]how to update many fields in single mysql table with “where clause”?
我有具有相同字段的表,想通過where子句更新該字段,
update tmp_aus_inv_data
SET cust_region= "ROTOMOULD"
WHERE division = "ROTOMOULD" ;
update tmp_aus_inv_data
SET cust_region= "Internal"
WHERE division = "EXTRUSION" and ucase(cust_region) like ucase('Internal%') ;
我嘗試了這個,但是沒有用,
update tmp_aus_inv_data
(set cust_region= "ROTOMOULD"),
(SET cust_region= "Internal")
WHERE division = "ROTOMOULD" and WHERE division = "EXTRUSION" and ucase(cust_region) like ucase('Internal%') ;
您可以在UPDATE
使用CASE
語句,所以我想您需要這樣的東西:
update tmp_aus_inv_data
SET cust_region
= case
when division = "ROTOMOULD" then "ROTOMOULD"
when division = "EXTRUSION"
and ucase(cust_region) like ucase('Internal%')
then "Internal"
else cust_region
end
where division in ("ROTOMOULD", "EXTRUSION")
能否請您嘗試以下查詢一次。
UPDATE tmp_aus_inv_data
SET `cust_region`= if(`division`= 'ROTOMOULD', 'ROTOMOULD', 'Internal')
WHERE division in ('ROTOMOULD','EXTRUSION');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.