Si realizando la siguiente consulta, en la que queremos recoger solo los años extraidos de una columna DATE:
$years_festive_days = VacationFestiveDay::select('date')->groupBy(DB::raw('YEAR(date)'))
->orderBy('date', 'desc')
->get();
Nos devulve el siguiente error:
SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated
Podemos modificar nuestra consulta de la siguiente manera:
$years_festive_days = VacationFestiveDay::select(DB::raw('YEAR(date) as year_only'))
->groupBy(DB::raw('YEAR(date)'))
->orderBy('year_only', 'desc')
->get();
