首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SQL多次更新同一行

SQL多次更新同一行
EN

Stack Overflow用户
提问于 2013-06-25 00:35:46
回答 1查看 2.4K关注 0票数 3

我们可以考虑对同一行进行多次更新的必要性的一个示例:

代码语言:javascript
运行
复制
create table t ( c1 int );
insert into t (c1) values (1);
insert into t (c1) values (2);
insert into t (c1) values (3);

update x1
set x1.c1 = X2.new
from t as x1
inner join
(
    select 1 as c1, 100 as new 
    union sel 1, 101
    union sel 1, 102
) as x2 on x1.c1 = x2.c1

同一行有3个潜在的更新。join结果集有3倍于同一行的行。此行是否仅被访问一次?最终值是如何计算的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-25 02:50:12

从更新documentation

在指定FROM子句以提供update操作的条件时要小心。如果UPDATE语句包含一个FROM子句,而该子句没有以这样的方式指定,即每次更新的列都只有一个值可用,即UPDATE语句不是确定性的,则该语句的结果是未定义的。

在这种情况下,结果是不确定的。最好将这些SQL语句视为错误。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17280518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档