当 Table 2 没有任何共同点时,如何从 Table 2 更新它们?
How to update Table 1 from Table 2 when they have nothing in common?
我有 2 个表 - 每个表只有一行。我想用表 2 中的相应列更新表 1 上的 o1 和 o2 列。
create table Table1(c1 int, c2 int, o1 int, o2 int)
create table Table2(o1 int, o2 int)
我有以下内容,这很糟糕(但有效)。
update Table1
set o1 = (select o1 from Table2),
o2 = (select o2 from Table2)
有没有更好的方法?
您可以使用:
update table1
set o1 = t2.o1,
o2 = t2.o2
from table2 t2;
通过这种方式,即使有 1 或 'n' 行,您也可以按预期进行操作-
UPDATE T1
SET T1.o1 = T2.o1,
T1.o2 = T2.o2
from table1 T1 INNER JOIN table2 T2 ON T1.o1=T2.o1 AND T1.o2=T2.o2;
我有 2 个表 - 每个表只有一行。我想用表 2 中的相应列更新表 1 上的 o1 和 o2 列。
create table Table1(c1 int, c2 int, o1 int, o2 int)
create table Table2(o1 int, o2 int)
我有以下内容,这很糟糕(但有效)。
update Table1
set o1 = (select o1 from Table2),
o2 = (select o2 from Table2)
有没有更好的方法?
您可以使用:
update table1
set o1 = t2.o1,
o2 = t2.o2
from table2 t2;
通过这种方式,即使有 1 或 'n' 行,您也可以按预期进行操作-
UPDATE T1
SET T1.o1 = T2.o1,
T1.o2 = T2.o2
from table1 T1 INNER JOIN table2 T2 ON T1.o1=T2.o1 AND T1.o2=T2.o2;