根据其他

时间:2016-06-06 13:07:37

标签: sql sql-update text-files

我很难找到这个,如果这个问题已经被提出并回答了,我很乐意使用这些信息。

我有一张基本完整的表格。但是我需要在文本文件中更改一个列的值。文本文件具有配对值。一个匹配表的另一列中的现有值,另一个是我需要用来替换表中旧值的新值。

例如,我在表格中有这样的东西:

Name        Address
John Smith  123 Main St
Jim Brown   123 Main St
Bob Jones   123 Main St

在文本文件中我有:

John Smith;123 Real Address
Jim Brown;456 Another Real Address
Bob Jones;789 Yet Another Address

我希望能够匹配名称并将每个匹配的地址插入表中。我可以在一个大查询中这样做吗?也许是一个连接到一组选定值的更新,如下所示:

UPDATE MyTable
SET Name = (SELECT **all my values here**)
WHERE Name = **something**

或者也许可以导出整个表,并将文本文件中的值与脚本合并,然后重新插入新的表值?我无法找到一种方便的方法来做到这一点。

1 个答案:

答案 0 :(得分:1)

使用您喜欢的SSIS或任何工具将文本文件导入到单独的表中,然后使用JOIN将现有表更新为新表。

网站上已经有很多问题可以解答如何使用JOIN更新表到另一个表的问题。这是一个很好的:

How can I do an UPDATE statement with JOIN in SQL?