NONAME:
私は新しいLaravelの学習者だとSQLへ変換するの難しさを持ちます
ここに私のSQLがあります
select sum(employee_income)
from employee
group by employee_id, employee_department
私がテストしたときに、このクエリが動作します。
ここで私の簡素化Laravelであるが、それは動作しません。
DB::raw('(select sum(employee_income) from employee group by employee_id, employee_department)')
誰もが何かを間違っを見ることができますか?
ティム・ルイス:
あなたは使用しないでくださいDB::raw()
、あなたがする必要がある場合を除きます。Laravelは入力しやすい、データベースに依存しない(すべてのDBと連携)クエリを書き込む方法を提供雄弁クエリビルダを、持っています。この1は非常にシンプルでなければなりません。
$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');