2013-04-09 54 views
0

我有3個表,選擇不相關的項目

user { id, name, email } 
games { id, name, icon } 
user_games {id_user, id_game} 

我whant選擇遊戲用戶不已經。

這是我最好的嘗試,但什麼都不返回。但最後不要給出錯誤訊息XD

SELECT a.* 
FROM games a 
LEFT JOIN user_games b ON a.id IN (b.id_game) AND '1' IN (b.id_user) 
WHERE (b.id_game IS NULL) AND b.id_user <> '1' 

請大家幫忙。

回答

1

它看起來像你主要擁有它。最後,user_games.id_user <> 1可能不是您想要的,因爲您正在查找id_user爲空的情況,並且空<> 1也爲空。

SELECT games.* 
FROM games 
    LEFT JOIN user_games on (
     games.id = user_games.id_game AND 
     user_games.id_user = '1' 
    ) 
WHERE user_games.id_user IS NULL 
+0

非常感謝 – 2013-04-09 22:39:18