У меня есть следующий запрос:Сортировать по алфавиту в MySQL
SELECT u.first_name, o.created_at FROM user AS u INNER JOIN order AS o ON o.user_id = u.id GROUP BY u.id
Структура данных выглядит следующим образом:
user 1
order 1
order 2
order 3
user 2
order 1
user 3
order 1
order 2
user 4
order 1
order 2
order 3
order 4
order 5
В настоящее время запрос возвращает данные следующим образом:
user 1
>
order 1
user 2
>
order 1
user 3
>
order 1
user 4
>
order 1
, но я хотел бы иметь все последние элементы порядка пользователя, как в примере ниже:
user 1
>
order 3
user 2
>
order 1
user 3
>
order 2
user 4
>
order 5
Есть ли способ, чтобы получить это хорошо? Мне нужно получить последний заказ каждого пользователя для создания отчета.
Я думаю, что это должно быть WHERE o.user_id = o2.user_id в Выбор o.created_at, потому что только то он возвращает правильные результаты, правильно? – undefinedman
да ... извините мою ошибку, я обновляю свой ответ @GrzegorzTomasiak –