Как я вижу User-Id
определяет User-Name
(User-Id --> User-Name
). Это означает, что не будет двух равных User-Id
с разными User-Name
с. И ваши данные ясно показывают это с User-Id
номер 2, которые оба имеют одинаковые User-Name
(sami
).
Так что было бы правильно сделать более простой и эффективный запрос:
select user-id, user-name, max(add-date) from table1
group by user-id, user-name
Примечание: MySql также позволяет вам удалить user-name
из группы с помощью
Теперь, очевидно, вашему столу не хватает Нормализации . Ваша таблица должна выглядеть так:
YourTable(User-Id, Add-Date)
И у вас должна быть еще одна таблица Users
, которая должна выглядеть так:
Users(User-Id, User-Name)
И чтобы получить ожидаемый результат в этой новой схеме, вам нужно объединить обе таблицы.