【发布时间】:2017-07-06 18:04:50
【问题描述】:
MS SQL Server 2008 - 我有一个 db 表,其中我有一小部分行接近匹配,除了 2 列,在表的其他地方。你将如何构建一个 SQL 更新循环来遍历子集 (record1) 并搜索其匹配的对应项 (record2),然后从列 (record2.columnX) 复制一个值以更新另一个 (record1.columnX)?
之前:
TxID|RecordID|ColumnA|ColumnX|ColumnY
1 |111.222 |ggg |1234 |subset1
2 |111.222 |ggg |3456 |subset2
3 |111.333 |hhh |6789 |subset1
4 |111.333 |hhh |7890 |subset2
5 |111.444 |jjj |2345 |subset1
5 |111.444 |jjj |5678 |subset2
之后:
TxID|RecordID|ColumnA|ColumnX|ColumnY
1 |111.222 |ggg |1234 |subset1
2 |111.222 |ggg |1234 |subset2
3 |111.333 |hhh |6789 |subset1
4 |111.333 |hhh |6789 |subset2
5 |111.444 |jjj |2345 |subset1
5 |111.444 |jjj |2345 |subset2
自学成才,对 SQL 比较陌生。耐心是值得的。
【问题讨论】:
-
你总是想保持最低的
ColumnX值吗?第一个值? -
不一定。他们只需要匹配。 ColumnX 将下游系统中的两条记录链接起来。
标签: sql sql-server