我对这一切都很陌生,并且刚刚开始编写脚本/编程。我搜索了高低并尝试了几件事,但我没有成功。我想要做什么
Table1
有Column1
Table2
有Column2
这些列中是文件路径。Column1
文件路径将是\\\server1\folder\video1.avi
,
Column2
文件路径将是http://server2/folder/video1.mpg
我想要做的是查询Table1
并Table2
匹配文件名,在这种情况下video1
。这个文件名总是不同的,因此需要一些东西,以便它自己找到字符串的一部分。匹配完成后,我需要Table1
进行更新Column1
,以使其与Table2.Column2
. 当更改完成并且我的程序的其余部分运行完毕后,其中的所有数据都Table2
将被删除,但我仍然需要Table1.Column1
永久更改并且不能恢复到旧的文件路径。
提前感谢您的帮助!
编辑:
这是我们数据库的文件名:
5149__20121030_120839.avi 将转换为 5149__20121030_120839.mpg 在任何给定的时间点,文件名的开头范围从 5100 到 5999,其余部分将随机更改。我目前的设置方式:
我正在获取文件名并将它们保存到 csv 文件中。从那里我将此 csv 文件上传到Table2.Column2
. 正是在这个时间点,我被困在查询文件路径的一部分以在Table1.Column1
. 找到一个匹配项,我正在尝试更新整个字符串Table1.Column1
以匹配我在Table2.Column2
. 在这一切都说完之后,我将删除Table2.Column2
所有被移动的文件,并在第二天重新开始。
我一直在搜索并找到了一些可以尝试的东西,但到目前为止还没有运气。我最接近的是:
UPDATE Table1
SET Table1.Column1 = Table2.Column2
FROM Table1
FULL JOIN Table2 ON Table2.Column2 like '%' + Table1.Column1 + '%'
每当我运行它时,它都会Table1.Column1
将所有内容设置为 NULL 而不是替换Table2.Column2
. 这只是我实验室中的一个测试,看看它是否会起作用,我什至还没有开始研究如何在两个不同的表之间匹配字符串的一部分。