我有一个要求,我需要匹配一个表中的字符串并显示该表的匹配记录。请看下文。
表 A
Column Address
12333
W.Main
street
Apt
402
表 B
Column Bad value , good value
Street St
当我用左外连接加入两个表时,我希望在表 B 中查找后,将表 A 中的 Street 替换为表 B 中的 Mainvalue。
截至目前,左连接显示所有空值并添加一组额外的列,主要输出应如下所示。然后将下面的列数据集中在 1 行中。喜欢 12333 W.Main St Apt 402
12333 W.Main St 公寓 402
到目前为止,我能够做到这一点。
declare @id int
declare @value varchar(1000)
--select dbo.fnNumbersFromStr ('Richmond Plaza - Hwy. 74 E.')
IF OBJECT_ID('TempDB..#TEMP') IS NOT NULL
BEGIN
DROP TABLE #TEMP
END
create table #Temp
(ID int,
Value varchar(max))
insert into #Temp
SELECT * from MASTER.dbo.SplitWords('12333 W.Main street Apt 402')
select * from #Temp
select * from dbo.tStreetNameAbbrevations
SELECT A.VALUE,B.strLookUpValue FROM #Temp AS A
LEFT JOIN tStreetNameAbbrevations AS B
ON A.Value = B.strBadValue
where B.strLookupvalue is not null
UPDATE #Temp
set value = (SELECT B.strLookUpValue FROM #Temp AS A
LEFT JOIN tStreetNameAbbrevations AS B
ON A.Value = B.strBadValue
where B.strLookupvalue is not null)
where value in (SELECT A.VALUE FROM #Temp AS A
LEFT JOIN tStreetNameAbbrevations AS B
ON A.Value = B.strBadValue
where B.strLookupvalue is not null)