繁体   English   中英

是否可以在一个查询中更新同一列中的2个字段(mysql)

[英]is it possible to update 2 fields in the same column in one query (mysql)

我有一个名为“ system ”的表,其中有2列“ variable ”和“ value ”,其中包含以下数据:

  • 变量='用户名'=>值='myuser'
  • 变量='密码'=>值='mypass'

我想在1个查询中更新这2个字段。

这两个查询是:

UPDATE System SET Value = 'myuser' WHERE Variable = 'Username'
UPDATE System SET Value = 'mypass' WHERE Variable = 'Password'
UPDATE System
SET Value = (CASE
    WHEN Variable = 'Username' THEN 'myuser'
    WHEN Variable = 'Password' THEN 'mypass'
  END)
 WHERE Variable = 'Username' or Variable = 'Password'

是的,使用他的案例陈述:

UPDATE System
    SET Value = (case when Variable = 'UserName' then 'myuser'
                      when Variable = 'Password' then 'mypass'
                      else Value
                 end)
    WHERE Variable in ('Username', 'Password');
UPDATE System 
SET Value = case when Variable = 'Username' then 'myuser' 
                 when Variable = 'Password' then 'mypass' 
            end
WHERE Variable in ('Username', 'Password')
UPDATE System SET
 Value = (case Variable when 'Username' then 'myuser' when 'Password' then 'mypass' end)
WHERE Variable  = 'Username' or Variable = 'Password'
UPDATE System SET `Value` = IF(`Variable`='Username', 'myuser', 'mypassw') 
WHERE `Value` IN ('Username', 'Password');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM