sql - SQL 更新中的字段顺序重要吗?

标签 sql sql-server

我突然想到,如果更新语句中的字段相互依赖,我不确定是否可以保证排序(或者需要保证!)。

举个例子,假设您有以下更新:

UPDATE Table
SET NewValue = OldValue, OldValue = NULL

NewValue 是否总是先更新,然后 OldValue 作废?或者行(或集、表等)的状态在处理过程中是不可变的,以便在计算更改之前不会提交所有更改?

最佳答案

创建一个新的虚拟行,然后自动替换现有行。在提交数据之前,您可以访问所有现有值。

编辑顺便说一句,这并不是一个不寻常的情况。

关于sql - SQL 更新中的字段顺序重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2725349/

相关文章:

sql - 移动平均线/滚动平均线

sql - 无法删除 SQL Server 2005 中的约束, "Could not drop constraint. See previous errors"

mysql - 仅将表数据从 MSSQL 迁移到 MySQL

sql - 如何在存储过程中使用可选参数

mysql - 将 case 语句的结果连接到列的值

sql - 如何用以下 NOT NULL 值替换 NULL 值? (SQL)

sql - 通过在同一日期或最接近的先前日期(不仅仅是完全匹配)加入来合并两个表

来自参数或变量的 SQL WHERE IN

PHP上传图片什么都不做,没有报错

sql-server - 无法在 SSMS 中查看 GEOGRAPHY(空间结果选项卡)