Как исключить числа из подсчета с помощью Laravel Query Builder?
Я не могу исключить число один и два из моего подсчета... Я использовал whereNotIn
, но не работал, почему?
$data = DB::table('incidencias')
->select(DB::raw('empresa as empresa'), DB::raw('count(*) as number'))
->whereNotIn('empresa', ['', 1, 2])
->orderBy('number', 'desc')
->groupBy('empresa')
->get();
У вопроса есть решение - Посмотреть?
Ответы - Как исключить числа из подсчета с помощью Laravel Query Builder? / How to exclude numbers from a count using Laravel Query Builder?
Является ответом!

21.01.2020 02:27:18
Потому что то, что вы хотите исключить, является результатом подсчета empresa
, а не empresa
,
Используйте havingRaw()
вот так:
$data = DB::table('incidencias')
->select(DB::raw('empresa as empresa'), DB::raw('count(*) as number'))
->where('empresa', '!=', '')
->groupBy('empresa')
->havingRaw('number NOT IN (1,2)')
->orderBy('number', 'desc')
->get();

большое спасибо, мой друг!!

Если бы я хотел фильтровать по первым буквам, как бы я мог это сделать? например.... если у меня оригинального Thing1 и Thing2 оригинального, и я хотел бы считать все ОЭ, как я мог сделать?

@Oscar просто используйте
where('column_name', 'like', "OE%")

танки для ответа, это работает только для графа OE, но я хочу объединить все OE в одном графе

например.. У меня есть несколько столбцов с OE и другие столбцы с AE я хотел бы посчитать OE и AE

тогда вам нужно использовать
selectRaw("SUM(IF(column LIKE 'OE%' , 1, 0)) AS oe_count")
, что-то вроде этого...

Я написал здесь stackoverflow.com/questions/59843084/…
Помочь в развитии проекта: