2016-09-02 35 views
2

我有SQL連接的問題。SQL部分加入

我有兩個表。表1:名字,某事表2:姓名,某事。

我想要做的是在table2中查找行,其名稱包含table1.name。 e.g這樣的行應選擇:

table1.name = aa. table2.name = aab 

我寫了一個查詢:

select * 
from table1 
inner join table2 on table2.name like '%'+table1.name+'%' 

它返回錯誤

[42000]: Error while compiling statement: FAILED: SemanticException [Error 10017]: Line 2:3 Both left and right aliases encountered in JOIN ''%''

誰能幫助我在這?非常感謝

+1

我刪除了不兼容的數據庫標籤。請添加您真正使用的數據庫的標籤。 –

+0

「失敗」是什麼意思? –

+0

返回錯誤:[42000]:編譯語句時出錯:FAILED:SemanticException [錯誤10017]:第2行:3在JOIN'%'中遇到左右別名 – Yonbantai

回答

3

你可以試試這個

select * 
from table1 t1 
where exists (select 1 
       from table2 t2 
       where t2.name like '%'+t1.name+'%')