2011-06-17 47 views
0

當我運行該SQL查詢,它不應該顯示的結果,如果ShopIDcompany是空如果數據爲空,防止顯示結果?

它返回null,因爲member_id不能在Shop表中找到。

SELECT username, group_id, T.company, T.ShopID 
FROM members AS M 
LEFT JOIN Shop AS T ON T.member_id = M.member_id 
WHERE M.member_id =15 

這怎麼解決?

回答

4

您可以使用RIGHT或INNER連接而不是LEFT連接。

左連接表示即使沒有右手邊,也會返回連接的左側。 RIGHT JOIN表示即使沒有左手邊,也會返回加入的右側。 INNER JOIN表示如果連接的兩邊都有記錄,則只返回記錄。

1

嘗試

SELECT username, group_id, T.company, T.ShopID 
FROM members AS M 
LEFT JOIN Shop AS T ON T.member_id = M.member_id 
WHERE M.member_id =15 AND NOT (ShopID is null OR Company is null)