Множественный подсчет отношений со столбцами groupBy в laravel eloquent - PullRequest
0 голосов
/ 08 марта 2020

У меня возник вопрос к подсчету отношений и столбцов при использовании group_by. Проще говоря, у меня есть таблица под названием стратегии . Каждая стратегия имеет много сделок . Каждая сделка имеет поля:

enter image description here

И я использую код ниже, чтобы получить данную стратегию и все сделки, назначенные ей:

 $strategy = Strategy::with('trades', 'trades.pair')->where('id', $id)->first();

И отобразить его как сгруппированный элемент:

enter image description here

И результат:

enter image description here

Проблема в том, что я использую first () для доступа к id_pair и отображения имени по отношению , то же самое с таймфреймом, потому что переменная $ пара является сгруппированным элементом . Затем есть поле trade_type, которое имеет значение 0 или 1, и мне нужно считать их отдельно (0 - это короткая сделка, 1 - длинная сделка); позже появляются поля tp1, tp2, sl также со значениями 0/1, которые требуют подсчета.

Вопрос в том, можно ли избежать использования first () и подсчитать их аккуратно, используя eloquent? Я почти уверен, что у raw sql будет какое-то решение для этого, но я спрашиваю, есть ли какой-нибудь laravel способ сделать это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...