Как отфильтровать дублированные строки идентификатора mysql и получить последнюю с отметкой времени? - PullRequest
1 голос
/ 08 сентября 2010

У меня есть таблица mysql с такими записями:

id  name        value   date
1   results1    1000000 2010-06-02 01:31:12
2   results2    600000  2010-09-03 05:42:54
1   results1    1200000 2010-09-06 02:14:36

Как я могу выбрать все и отфильтровать несколько строк с одинаковым идентификатором, выбрав только одну с самой поздней датой?

Тип данных столбца "date" имеет метку времени и по умолчанию имеет CURRENT_TIMESTAMP.

1 Ответ

1 голос
/ 08 сентября 2010
select m.*
from (
    select id, max(date) as MaxDate
    from MyTable
    group by id
) mm
inner join MyTable m on mm.id = m.id and mm.MaxDate = m.Date
...