SQL - 更新多个列

时间:2014-09-16 07:25:22

标签: sql-server

在以下情况下我该怎么做:

我想在同一个表中更新3列:

QUERY

UPDATE Table
SET x='XX', y='YY', z='ZZ'
WHERE x='1', y='1', z='1'

我尝试了这段代码,但没有奏效。

有什么建议吗?

由于

4 个答案:

答案 0 :(得分:3)

在where条件错误的情况下你是SQL,你应该使用逻辑运算符而不是逗号:

UPDATE table
SET x = 'XX',
    y = 'YY', 
    z = 'ZZ'
WHERE x = '1' 
   AND y = '1' 
   AND z = '1'

您只能使用逗号分隔您想要设置的字段。对于where子句,您将使用逻辑关键字,例如AND,或OR

答案 1 :(得分:1)

你的查询错了。就像这样

update Table set x='XX', y='YY', z='ZZ' where x='1' OR y='1' OR z='1'

答案 2 :(得分:1)

几乎是正确的,但是更新部分和where子句的语法不同,请尝试这样:

update Table set x='XX', y='YY', z='ZZ' where x='1' and y='1' and z='1'

答案 3 :(得分:1)

我不确定我的问题是否正确,但不应该做以下工作?

您的where子句的语法错误where x='1', y='1', z='1'

更改为:

UPDATE myTable 
  SET x='XX', y='YY', z='ZZ' 
 WHERE x='1' AND  y='1' AND z='1'

OR

UPDATE myTable 
   SET x='XX', y='YY', z='ZZ' 
 WHERE x='1' OR y='1' OR z='1'