我正在尝试使用REPLACE()函数使用另一个表(#PEOPLE)中的数据更新一个表(#TEMPTABLE)中的列。
#TEMPTABLE有一个名为“NameString”的列,它是一个带有用户名和ID的长字符串。
#PEOPLE有一列ID和IDnumber。
UPDATE #TEMPTABLE
SET NAMEString = REPLACE(NAMEString, a.[ID], a.[IDNumber]) FROM #PEOPLE a
我正在尝试使用来自#People表的IDnumbers替换NameString列中的所有ID。
答案 0 :(得分:0)
你需要给它一个连接标准。例如:
update #TEMPTABLE
set NAMEString = replace(a.NAMEString, a.ID, b.IDNumber)
from #TEMPTABLE a
left join #PEOPLE b
on a.id = b.ID
此外,请确保在使用IDNumber
列时引用正确的表格 - 您的原始查询实际上并未使用包含IDNumber
的表格,据我所知你的表格的描述。
请注意,我的示例假设ID
中有#TempTable
字段,或其他要加入的字段 - 否则,您可能需要先从NameString
列中提取它。