2017-02-22 66 views
0

請幫助我想寫一個包含某個詞的腳本。 e.g:sql查詢包含選定列的某些詞

table name : sample 
+-------+-------+ 
|column1|column2| 
+-------+-------+ 
|1  |help | 
+-------+-------+ 

table name : sample2 
+-------+-------+ 
|column1|column2| 
+-------+-------+ 
|1  |help me| 
+-------+-------+ 

我嘗試寫這樣一個劇本:

SELECT *FROM SAMPLE S 
JOIN SAMPLE2 S2 ON S.COLUMN1 = S2.COLUMN2 
WHERE S.COLUMN2 LIKE S2.COLUMN2 

但「where子句」是行不通 任何一個知道如何編寫正確的腳本? 如果有的話請回答我的問題

回答

1

這條where子句理想情況下應該是JOIN的一部分。

你需要以前綴和使用字符串連接後綴通配符%,爲喜歡的工作:

SELECT *FROM 
SAMPLE S JOIN SAMPLE2 S2 
ON S.COLUMN1 = S2.COLUMN1 
And S2.COLUMN2 LIKE '%' || S.COLUMN2 || '%'; 
+0

感謝兄弟,這是工作 – arkis

0

改變連接條件,使他們使用COLUMN1兩者結合,然後你想要的匹配:

'help me' LIKE '%help%' 

所以:

SELECT * 
FROM SAMPLE S 
     JOIN SAMPLE2 S2 
     ON ( S.COLUMN1 = S2.COLUMN1 
      AND S2.COLUMN2 LIKE '%' || S.COLUMN2 || '%') 
+0

感謝兄弟,它也在工作 – arkis