I can't exclude the number One and Two from my count... I used whereNotIn
but didn't work, why?
$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();
Because what you want to exclude is the count result of empresa
, not empresa
,
Use havingRaw()
like this:
$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();