如何用另一个表中的另一列替换一列数据?
问题描述:
我有两个表,tbl1(col1,col2,col3),tbl2(col1)。我需要用tbl2.col1中的数据替换tbl1.col1的数据。我的问题是没有共同的领域加入这两个表。是否可以编写查询来执行更新?如何用另一个表中的另一列替换一列数据?
答
这应该工作。我不确定你有什么样的数据,但没有办法链接Table2和Table1,但是:
WITH T1 AS
(
SELECT
RN = ROW_NUMBER() OVER (ORDER BY NULL)
,Col1
FROM
Tbl1
)
,T2 AS
(
SELECT
RN = ROW_NUMBER() OVER (ORDER BY NULL)
,Col1
FROM
Tbl2
)
UPDATE
T1
SET
Col1 = T2.col1
FROM
T1
INNER JOIN
T2
ON T1.RN = T2.RN
但是我需要用tbl2.col1更新tbl1.col1。 – GLP
@GLP更新,以满足实际要求:) – JNK
谢谢。这样可行! – GLP