Вот что я пытаюсь сделать. Скажем, у меня есть эта таблица t:
id | record_date | other_cols
18 | 2011-04-03 | x
18 | 2012-05-19 | y
18 | 2012-08-09 | z
19 | 2009-06-01 | a
19 | 2011-04-03 | b
19 | 2011-10-25 | c
19 | 2012-08-09 | d
Для каждого id я хочу выбрать строку, содержащую минимальную запись record_date. Поэтому я получаю:
id | record_date | other_cols
18 | 2011-04-03 | x
19 | 2009-06-01 | a
Единственные решения, которые я видел в этой проблеме, предполагают, что все записи record_date различны, но это не относится к моим данным. Использование подзапроса и внутреннего соединения с двумя условиями даст мне дубликаты строк для некоторых идентификаторов, которые я не хочу:
id | record_date | other_cols
18 | 2011-04-03 | x
19 | 2011-04-03 | b
19 | 2009-06-01 | a