noname:
Soy un nuevo alumno laravel y tener dificultad para convertir de SQL
aquí está mi sql
select sum(employee_income)
from employee
group by employee_id, employee_department
esta consulta funciona cuando pruebo.
aquí está mi simplificado laravel pero no funciona.
DB::raw('(select sum(employee_income) from employee group by employee_id, employee_department)')
¿Alguien puede ver algo mal?
Tim Lewis:
No se debe utilizar DB::raw()
a menos que tenga que hacerlo. Laravel tiene el Generador de consultas elocuente, que proporciona un fácil de escribir, base de datos independiente del método de escritura de consultas (funciona con todos los DBS). Éste debe ser bastante simple:
$sum = Employee::groupBy('employee_id')
->groupBy('employee_department')
->sum('employee_income');
// Or, if you don't have an `Employee.php` model
$sum = DB::table('employees')
->groupBy('employee_id')
->groupBy('employee_department')
->sum('employee_income');