繁体   English   中英

SQL“ SET a = 1 AND b = 2”是什么意思

[英]What does SQL “SET a=1 AND b=2” means

我试图创建一个查询来更新多个记录,但我写错了版本,但没有任何错误。

版本错误: update table SET c1=1 AND c2=2

谁能解释它的作用以及为什么不失败。

我猜:

update table SET c1=1 AND c2=2

转换为:

update table 
SET c1 = (1 AND c2=2)

然后对表达式(1 AND c2=2)求值并进行隐式转换,以更新字段c1

因此,例如,如果您的表如下所示:

create table mytable (c1 int, c2 int);

insert into mytable values
(1, 3),
(2, 1),
(3, 2);

查询:

SELECT c1, c2, 1 AND c2=2 AS expr
FROM mytable

返回:

c1, c2, expr
------------
1,  3,  0
2,  1,  0
3,  2,  1

在这里演示

暂无
暂无

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

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