2016-05-11 8 views
1

私は、Springデータを通してクエリをmySqlデータベースに書き込む必要があります。 私はテーブルUserとテーブルを持っていますが、多対多の関係を持っていますので、id_usernameとid_fleetのテーブルがあります。 艦隊に追加する可能性があるすべてのユーザーを知りたいので、指定された艦隊を既に持っているユーザー以外のすべてのユーザーが必要です。 私はこのようなMySQLのワークベンチでサンプルクエリを試してみました:別のクエリから返されたもの以外のすべてのユーザを取得するクエリ

SELECT username FROM dart.user where enabled=true NOT IN (Select id_username from dart.fleet_Has_User where dart.fleet_Has_User.id_fleet= '8') 

が、それは2番目のクエリのユーザーを削除しません。私たちを手伝ってくれますか ?おかげ

+3

'id_username NOT IN' – artm

+0

おかげで、何か愚かなエラー – luca

答えて

0

はあなたにも参加し、左使用することができますNOT IN

SELECT username FROM dart.user 
where enabled=true 
and id_username NOT IN (Select id_username from dart.fleet_Has_User where dart.fleet_Has_User.id_fleet= '8') 
    ^^^^^^^^^^^ 
    yourIdusername col of dart.user table      
0

のように使用してみてください。

SELECT username 
FROM dart.user u 
left join dart.fleet_Has_User fu 
on fu.user_id = u.user_id and 
    fu.id_fleet= '8' 
where U.enabled=true 
and fu.user_id is null 
関連する問題