У меня есть таблицаПолучить первое значение
ID VALUE DATE
1 2 1.1.2013
1 3 1.9.2013
1 3 1.4.2013
2 1 1.1.2013
2 1 1.2.2013
3 3 1.3.2013
3 1 1.4.2013
3 3 1.5.2013
мне нужно получить только первое значение для идентификатора и только одну строку для каждого идентификатора.
Я стараюсь это выбрать:
SELECT ID,
first_value(VALUE) over(PARTITION BY id ORDER BY DATE) f_value,
first_value(DATE) over(PARTITION BY id ORDER BY DATE) f_date
FROM table1
GROUP BY ID
Но я не могу использовать GROUP BY с FIRST_VALUE.
Первое значение в вашем случае означает значение с самой ранней датой? – Armunin
Да. Нужно быть первым упорядоченным по порядку по дате группой по id –
Я думаю, вам нужно 'MIN (VALUE)', 'MIN (DATE)', если вы хотите вернуть одну строку на id –