2016-03-28 5 views
-3

laravelでこのクエリを実行する方法。 ?クエリの実行

select d1.update_id from (select update_id, count(update_id) 
    as ct from updates_tags where tag_id in (67,33,86,55) group by 
    update_id) as d1 where d1.ct=4 
+0

で生のクエリを使用することができますあなたが使用することができるクエリのwhereRaw() –

+0

結果が得られません。私はt_idに基づいてフィルタにこれを使用したいと思います。複数のt_idに同じu_idが含まれている場合は、それを印刷する必要があります。 – Ankit

答えて

0

あなたは説得力を持つwhere条件は、各チェーン1はandのようにチェーンを評価することができます。

$update = Tag::whereIn('t_id',$tags)->whereIn('u_id',$tags)->where(/*more and conditions you could need*/)->lists('u_id')

編集:あなたはU_IDと一致するものが必要な場合は、このことを考慮してください。

$update = DB::table('tags') 
->select('t_id', 'u_id', DB::raw('count(*) as total')) 
->whereIn('t_id',$tags) 
->where('total','=',count($tags)) 
->groupBy('u_id') 
->lists('u_id'); 
+0

私はこれをt_idに基づくフィルタに使いたいと思います。複数のt_idに同じu_idが含まれている場合は、それを印刷する必要があります。一度に2つまたは4つのt_idが複数ある可能性がありますが、どのように確認できますか? – Ankit

+0

vivoconunxino:私はu_idリストをt_idにしたくありません。私はララベルの初心者です。もしt_id(11,21)が同じu_idなら、私はそのu_idが必要です。 – Ankit

+0

編集を確認して試してみてください。 – vivoconunxino