Задать вопрос
@atanatis

Как решить ошибку: Cannot select distinct identifiers from query with LIMIT and ORDER BY on a column from a fetch joined to-many association...?

Не могу понять, как это исправить. В бд запрос нормально отрабатывает, а через createQueryBuilder не хочет. Пробовала в бд с LIMIT прописать, все нормально.
SELECT `product`.`id`, `product`.`name`, `image`.`path`, `image`.`uniq_name`, MIN(`product_seller`.`price`) as `price` FROM (`image` INNER JOIN `product` ON `image`.`id` = `product`.`image_id`) INNER JOIN `product_seller` ON `product`.`id` = `product_seller`.`product_id` GROUP BY `product`.`id` ORDER BY `product_seller`.`price` ASC LIMIT 3;


Вот что у меня в контроллере:
$pagination = $paginator->paginate(
            $productRepository->findAllWithSearchQuerySortPrice($request->query->get('q')),
            $request->query->getInt('page', 1), /*page number*/
            4 /*limit per page*/
        );


Сам запрос:
return $qb
            ->select(array('p.name', 'p.slug', 'img.uniq_name as imageName', 'img.path as imagePath', 'MIN(ps.price) as price'))
            ->from('App:Product', 'p')
            ->innerJoin('p.image', 'img')
            ->innerJoin('p.productSellers', 'ps')
            ->groupBy('p.id')
            ->orderBy('ps.price', 'ASC')
        ;
  • Вопрос задан
  • 259 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
@atanatis Автор вопроса
Решила, заменив ->orderBy('ps.price', 'ASC') на ->orderBy('price', 'ASC')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы