Как выполнить этот запрос в 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
Как выполнить этот запрос в 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
Вы можете цепи where
условия с красноречивым, каждый прикован один оценивается как and
.
$update = Tag::whereIn('t_id',$tags)->whereIn('u_id',$tags)->where(/*more and conditions you could need*/)->lists('u_id')
Edit: Если вам нужны те, совпадающие с 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');
Я хочу использовать это для фильтра на основе t_id. Если несколько t_id содержат один и тот же u_id, тогда он должен быть напечатан. Может быть несколько t_id за время 2 или 4, как я могу проверить? – Ankit
vivoconunxino: Я хочу, чтобы список u_id не был t_id. Я начинаю в ларавеле. Если t_id (11,21) то же u_id, то мне нужно, чтобы u_id. – Ankit
Пожалуйста, проверьте и попробуйте изменения – vivoconunxino
вы можете использовать Raw Запросы в Laravel
$results = DB::select(SELECT * FROM table WHERE id IN (1,2,3,4) AND);
для этих типов запроса вы можете использовать whereRaw() –
не получает результатов. Я хочу использовать это для фильтра на основе t_id. Если несколько t_id содержат один и тот же u_id, тогда он должен быть напечатан. – Ankit