У меня есть такой код:
$fee = sys_fee::where('payment', '=', 'Paid')->get();
$totalFee = $fee->sum('amount');
Может ли кто-нибудь сказать мне, проходит ли база данных для обеих вышеперечисленных строк, или она попадает в базу данных только один раз в первой строке?
Проще говоря, выполняет ли следующая строка другой запрос к базе данных или работает только с массивом?
$totalFee = $fee->sum('amount');
На данный момент я понимаю, что он не выполняет другой запрос к базе данных.






Ваш $fee является возражением Collection, метод sum () не выполняет SQL-вызовы, вместо этого он просматривает все элементы этой коллекции.
Я не делаю еще одного вызова SQL. Другой способ отладки - установка отладчика SQL или использование DB :: getQueryLog ().