2015-09-16 73 views
0

我正在寫一個簡單的select子查詢語句,它沒有給出任何結果。它沒有拋出任何錯誤。 我的SQL查詢是這樣的 -SQL子查詢問題不會產生任何錯誤和結果

select * from Table1 
where id in (select ID from Table2 where user = 'xyz') 

我試過也存在,但沒有表現出任何結果。 感謝您的幫助。

回答

1

這可能是下面的子查詢,因爲過濾條件where user = 'xyz'不匹配任何記錄

select ID from Table2 where user = 'xyz' 

外部查詢如下不符合條件返回一個空列表where id in()

select * from Table1 where id in() 

因此返回一個空的結果集。

您可以將您發佈的查詢是一個INNER JOIN查詢像

select t1.* 
from Table1 t1 join Table2 t2 
on t1.id = t2.id 
where t2.user = 'xyz'; 

作爲測試,請嘗試使用LIKE操盤平等比較

select * from Table1 
where id in (select ID from Table2 where user like '%xyz%')