Любой правильный способ сортировки запроса MySQL перед группировкой результата - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть запрос, который объединяет 3 таблицы, и мне нужно отсортировать результаты из каждой группы в предложении group By. Результатом являются заказы от всех пользователей на определенный период. Каждый заказ состоит из различных продуктов. Таким образом, по моему результату у меня есть общая стоимость каждого заказа, а в качестве идентификатора заказа я использую группу By, чтобы получить только один результат из каждого заказа с общей стоимостью. Но тогда мне нужно отсортировать по общей стоимости заказа от каждого пользователя в порядке убывания. В результате получается следующее.

grouped table

У меня есть запрос MySQL, приведенный ниже, но когда я добавляю предложение ORDER BY, я не могу иметь все имена пользователей вместе.

SELECT
  u.user_id AS uid,
  u.user_name AS username,
  u.user_lastname AS lastname, 
  o1.order_id AS oid,
  SUM(o2.product_sum) AS SUMA 
FROM user AS u 
LEFT JOIN orders AS o1 ON u.user_id = o1.user_id
LEFT JOIN ordered_items AS o2 ON o1.order_id = o2.order_id 
WHERE o1.order_date BETWEEN '2020-02-17' AND '2020-03-27' 
GROUP BY oid

1 Ответ

0 голосов
/ 22 апреля 2020

Как писал @Schwen, это то, что сработало.

ЗАКАЗАТЬ по uid, suma DES C

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