Как исключить числа из подсчета с помощью Laravel Query Builder?

Как исключить числа из подсчета с помощью Laravel Query Builder?

20.01.2020 10:31:12 Просмотров 21 Источник

Я не могу исключить число один и два из моего подсчета... Я использовал 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?

Является ответом!
TsaiKoga

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();
https://stackoverflow.com/questions/59829784/how-to-exclude-numbers-from-a-count-using-laravel-query-builder/59832226#comment105815697_59832226
большое спасибо, мой друг!!
https://stackoverflow.com/questions/59829784/how-to-exclude-numbers-from-a-count-using-laravel-query-builder/59832226#comment105816107_59832226
Если бы я хотел фильтровать по первым буквам, как бы я мог это сделать? например.... если у меня оригинального Thing1 и Thing2 оригинального, и я хотел бы считать все ОЭ, как я мог сделать?
https://stackoverflow.com/questions/59829784/how-to-exclude-numbers-from-a-count-using-laravel-query-builder/59832226#comment105819010_59832226
@Oscar просто используйте where('column_name', 'like', "OE%")
https://stackoverflow.com/questions/59829784/how-to-exclude-numbers-from-a-count-using-laravel-query-builder/59832226#comment105819187_59832226
танки для ответа, это работает только для графа OE, но я хочу объединить все OE в одном графе
https://stackoverflow.com/questions/59829784/how-to-exclude-numbers-from-a-count-using-laravel-query-builder/59832226#comment105819237_59832226
например.. У меня есть несколько столбцов с OE и другие столбцы с AE я хотел бы посчитать OE и AE
https://stackoverflow.com/questions/59829784/how-to-exclude-numbers-from-a-count-using-laravel-query-builder/59832226#comment105819557_59832226
тогда вам нужно использовать selectRaw("SUM(IF(column LIKE 'OE%' , 1, 0)) AS oe_count"), что-то вроде этого...
Закрыть X