从两个sql server表中交换列
答
update table1 t1
set t1.col1 = (select t2.col2
from table2 t2
where t2.id = t1.id
and t1.col1 < t1.col2)
这样的事情应该很容易做到。
我看到的唯一难点是将table2中的行与table1中的行匹配。在我的例子中,我认为两个表共享一个唯一的“id”列,可以轻松进行匹配。用更合适的东西修改查询。
+0
在SQL SERVER中,您无法将昵称添加到UPDATE中的表中。所以'UPDATE table1 t1'将不起作用。 – 2009-10-30 17:39:44
答
你应该能够做这样的事:
update tablename set column1=column2
from table1 inner join table2 on joincondition
where column1 < column2;
如果没有实际的表结构,很难做到更具体。
你可以请你张贴表格的结构吗? – 2009-10-30 17:30:04
这两个表具有相同的结构,我有每个表中的树列和插入相同数量的行。 我想比较的两列是INT。 – Roch 2009-10-30 17:34:30