在SQL 中同一逻辑阶段的操作是同时发生的。
先有一个例子做为带入:
declare @x as int =1;
declare @y as int =2;
set @[email protected];
set @[email protected];
select @x,@y;
go
-- 最后select 的结果是 x=2、y=2!这个结果在大家看来、来的是这么的理直气壮。
那么好我们看一下一个。这次我不把x,y 保存在变量里而是保存到表里。
create table t(x int,y int);
insert into t(x,y) values(1,2);
update t set x=y,y=x;
select x,y from t;
-- 这次得到的结果是2,1!也就是我们说的在SQL同一逻辑阶段中所有的操作是同时发生的。
时间: 2024-10-12 22:36:08