у меня есть проблема с возвратом данных без дубликатов
мне нужно получить com_id с максимальной датой без дубликатов в com_id, и мне нужно показать порядок com_id по t_date
**
**

i tried this code but i got a wrong result
SELECT com_id
FROM vw_vsa
where current_season=season
GROUP BY com_id,t_date
order by t_date
мой ожидаемый результат
124235623 (1 месяц)
123457 (месяц 1)
1111 (месяц 2 (максимум месяц его группы)
123 (месяц 5 (максимальный месяц его группы)
просто порядок com id по t_date .. но t_date отдельного com_id должен быть максимальным для его группы
пожалуйста, обновите свой вопрос и покажите ожидаемый результат
я обновил помогите если сможете
Глядя на ожидаемый результат, кажется, что вы просто хотели SELECT distinct com_id FROM vw_vsa where current_season=season. Не уверен в значении вашего требования: get com_id of maximum date. Если это имеет значение, пожалуйста, уточните с дополнительным примером
послушайте, извините за сложность ... посмотрите на com_id, он дублируется и имеет t_date, мне нужно получить максимальную t_date для каждого отдельного (уникального) com_id, а затем упорядочить результат от min до max с точки зрения t_date
` упорядочить результат от минимального до максимального с точки зрения t_date` с точки зрения t_date или месяца t_date ?
на самом деле я сказал от минимума до максимума, и это означает от более старой даты до самой новой даты ... так что не только месяц и день месяца ... я могу дать упр. >> 01.01.2019, затем 01.02.2019, затем 02.02.2019, затем 20.05.2019 (формат месяц/день/год)
то ваш ожидаемый результат вводит в заблуждение. Вы не должны были указывать (month 1) и т. д. И почему 1111 идет после 124235623 ? когда дата 1111 2018, а 124235623 2019?


Попробуйте использовать DISTINCT at from clasule
SELECT DISTINCT com_id FROM vw_vsa where current_season=season GROUP BY com_id,t_date order by t_date
я получил эту ошибку... Элементы ORDER BY должны появиться в списке выбора, если указан SELECT DISTINCT.
Я думаю, вам нужно сделать это:
SELECT com_id, max(t_date)
FROM vw_vsa
where current_season=season
GROUP BY com_id
order by max(t_date)
хорошо, но даты всех com_id не были упорядочены от минимального до максимального
Судя по вашему описанию, order by должно быть просто max(t_date). Но ожидаемый результат, похоже, вы хотели заказать на основе month
SELECT com_id, max(t_date)
FROM vw_vsa
where current_season = season
GROUP BY com_id
order by month(max(t_date))
это правда, но только одна проблема в этот день месяца, я имею в виду, что мне нужно сначала получить 02.02.2019, а затем 01.02.2019
просто измените пункт ORDER BY в соответствии с вашими требованиями
спасибо, это сработало, и я сожалею о сложности
Каков ожидаемый результат ?