2016-07-18 14 views
1

私は2つのテーブル 'users'と 'instantUsers'を持っています。私はそれらをusers.id = instantUsers.user_idに参加させ、結果に2つのwhere句を追加したいと思います。私は両方をやる方法が分からない。私が使用しているクエリがある -ジョインクエリのwhere節laravel 4.2

DB::table('users') 
    ->join('instantUsers', function($join) use ($userId) { 
     $join->on('users.id', '=', 'instantUsers.user_id'); 
    }) 
    ->where('instantUsers.instantMode', '=', '1') 
    ->where (function($query) use ($userId) { 
     $query->where('instantUsers.user_id', '!=', $userId); 
    }) 
    ->get(); 
+0

私はこのクエリは、あまりにも私のために働いていないフロントエンド –

答えて

0

あなたは多分これがお手伝いします、このいずれかを試すことができます:

DB::table('users as table1')->join('instantUsers as table2','table1.id','=','table2.fkId') ->where('table2.instantMode','=','1')->where('table2.user_id','!=',$userId)->get(); 
+0

のステータスコード500を取得していますようにそれを記述します –

0

あなた'instantUsers.instantMode','=','1'式は、より良い性能が得られ、参加して行うことができます。 私はこの

DB::table('users') 
    ->join('instantUsers', function($join) use ($userId) { 
     $join 
      ->on('users.id', '=', 'instantUsers.user_id') 
      ->on('instantUsers.instantMode', '=', 1); 
    }) 
    ->where('users.id', '!=', $userId) 
    ->get(); 
+0

このクエリは、まさにisn't作業は何私 –

+0

のために働いていませんか?何かエラーがあれば、それは何ですか?データベーススキーマも提供できますか? – Kaspars

+0

ステータスコード500だけでエラーは表示されません。また、単純な結合でも機能しません。 –