0
Laravel Запрос:Моя работа запросов в MySQL, но не работает с Laravel красноречивым
$studentsFee = \FeeModal::query();
$studentsFee->groupBy('main_campus_id', 'session_id', 'class_info_id', 'section_id', 'stage_id')
->selectRaw('count(student_id) as student_strength,SUM(IF(paid_amount>0,1,0)) as submit_students,SUM(IF(paid_amount=0,1,0)) as not_submit_students, sum(paid_amount) as submit_amount')
->with('sessionMode', 'section', 'classInfo', 'stage')->get();
dd(count($studentsFee). ' Records');
Результат: 0 записей
Сформирован запрос по ->toSql();
string(281) "select count(student_id) as student_strength,SUM(IF(paid_amount>0,1,0)) as submit_students,SUM(IF(paid_amount=0,1,0)) as not_submit_students, sum(paid_amount) as submit_amount from `fee` group by `main_campus_id`, `session_id`, `class_info_id`, `section_id`, `stage_id`"
и когда я выполнить этот запрос в mysql он возвращает 18 строк;
Спасибо alexw за ответ: но я не понимаю вашу точку .. что вы хотите спросить, что ... где я забыл присвоить результат запроса переменной ... –
Я говорю, что если это не какая-то особенность Eloquent, о которой я не знаю, вам нужно назначить результаты 'get' переменной (в моем примере я вызываю * result * '$ studentsFee'. В вашем примере' $ studentsFee' является вашим * запросом *. Когда вы вызываете 'count' на объект * query *, он не собирается возвращать подсчет * результата * запроса - он попытается «подсчитать» сам запрос. – alexw