假设有以下表格:
Table A
[Description]
Some Apples are Green
Many Bananas are Yellow
Carrots are Orange
Table B
[Color]
Apples
Bananas
Carrots
我想inner join
这些表B.[Color]
是A.[Description]
结果将是
[Description] [Color]
Some Apples are Green Green
Many Bananas are Yellow Yellow
Carrots are Orange Orange
答案 0 :(得分:1)
这不涉及类似条件
select dataa,b.colorname from #temp t
cross apply
(select replace(t.dataa,colorname,'') as rplc,colorname
from #colors)b
where dataa<>rplc
答案 1 :(得分:0)
虽然TheGameiswar的解决方案非常酷且效率更高 ....这是针对一小部分数据的另一种更简单的解决方案。
select * from
#A
inner join #B
on [description] like '%'+color+'%'
答案 2 :(得分:0)
我会选择最简单的解决方案,除非性能可能是个问题:
tsc
注意我认为描述以颜色结束。如果情况并非总是如此,则需要在最后添加另一个%。