2011-03-21 65 views
0

我得为nvarchar(max)列有着不同的价值观一样“A2”检测(找到)串在另一个字符串(为nvarchar(MAX))

而且从另一个表值都“另一列(A2和A3)或A4'

我需要检测第二列中的字符串是否包含第一列中的字符串。

因此,然后我需要选择包含从第一个表的第一列字符串的第二个表的所有列。

东西一样...但是,这是错误的

SELECT * Cols FROM T2 
WHERE (SELECT T1.StringCol FROM T1) IN T2.StringCol 

,但我更了解它喜欢它(在F#语法)

for t1.date, t1.StringCol from t1 
for t2.StringCol from t2 
    if t2.StringCol.Contains(t1.StringCol) 
    yield t2.StringCol, t1.date 

回答

1

这应该得到你想要的东西......

select t2.* 
from t1 cross join t2 
where patindex('%' + t1.StringCol + '%', t2.StringCol) > 0 
相关问题