我有一个表A,其中一列名为OriginalWord,另一个表B的列名为mySentence。
OriginalWord有如下行:
存储任何单个单词。
mySentence存储带句子的行,例如:这是一个明星。
如果mySentence中存在OriginalWord中的任何单词,我想列出mySentence中的所有行。
所以上面例子中的mySentence会被列出,但如果mySentence的行是“这是我的父亲”,则不会列出。
如何在T-SQL中编写?
答案 0 :(得分:1)
由于LIKE %%
谓词摆脱了索引的使用,你可以用它来实现你想要的。
SELECT DISTINCT
T1.mySentence
FROM Table1 T1
INNER JOIN Table2 T2
ON ' '+ T1.mySentence + ' ' LIKE '% ' + T2.OriginalWord + ' %'
<强>更新强>
答案 1 :(得分:0)
对于简单方案,您可以使用LIKE
谓词,如下所示:
SELECT
s.mySentence
FROM Sentences s
INNER JOIN Words w ON s.mySentence LIKE '%' + w.OriginalWord + '%';