Сгруппировать в SQL запросе поля по имени персонажа и вывести только записи с минимальной датой. Как сделать?
Есть таблица
name, date, price
Слон, 21-06-2021, 5000
Слон, 22-06-2021, 7500
Мартышка, 21-06-2021, 4000
Мартышка, 22-06-2021, 3900
Кот, 21-06-2021, 11200
Кот, 22-06-2021, 8700
Нужно сгруппировать по имени персонажа и вывести поле суммы с минимальной для персонажа даты, чтобы получилось:
Слон, 21-06-2021, 5000
Мартышка, 21-06-2021, 4000
Кот, 21-06-2021, 11200
Пробовал в HAVING написать условие min(date) = date и не получилось так сделать. Как получить нужный результат?
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
SELECT *
FROM table t1
WHERE NOT EXISTS ( SELECT NULL
FROM table t2
WHERE t1.name = t2.name
AND t1.`date` < t2.`date` )