Я использую symfony4 и doctrine2.В таблице у меня есть некоторые данные с той же startDate.
Я хотел бы выбрать все данные в этой таблице, но сгруппировать по startDate и последним.Например, если у меня 3 записи с датой начала 2018-02-01, поэтому я бы хотел выбрать последнюю добавленную.
Это построитель запросов в хранилище, но проблема в том, что перваязапись выбрана не последней, несмотря на то, что я добавил -> orderBy ('e.id', 'DESC'), как вы можете видеть.
Допустим, у меня есть такие строки:
id = 1 , startDay = 2017-04-20
id = 2, startDay = 2018-01-02
id = 3, startDay = 2018-03-18
id = 4 , startDay = 2018-01-02
Таким образом, строки с идентификаторами 1, 3 и 4 должны быть выбраны из таблицы.Строка с идентификатором 2 должна игнорироваться, поскольку она имеет одинаковую начальную дату строки 4. Но мой запрос возвращает ligne 2, а не 4.
$qb = $this->createQueryBuilder('e')
->groupBy('e.startDate')
->orderBy('e.id', 'DESC')
;
return $qb->getQuery()->getResult();
Так что, если многие записи имеют одинаковую дату начала, выберите последнюю добавленную