PostgreSQL оптимальный поиск даты

Есть SQL таблица в которой хранятся данные по товарам:

| ИМЯ | дата | количество продаж | цена |

введите сюда описание изображения

Но данные не полные, только за последние 30 дней есть статистика за каждый час в сутках(до этого периода данные в основном только за 1 час, после идет один неполный день(выделенный синим)).

Мне необходимо найти минимальную дату(для каждого товара в таблице) в которой будут данные за 24 часа(на скрине это дата 2023-09-21), и вывести в виде:

+-------+-----------------+
| name  | date            |
+-------+-----------------+
|Factu..| 2023-09-21-0-0-0|
+-------+-----------------+
|name...| 2023-08-05-0-0-0|
+-------+-----------------+
|...    | ...             |

Вот запрос который показывает нужную дату по выбранному имени. Осталось добавить колонку name.

"""SELECT date_trunc('day', date)
FROM table
WHERE name = 'Factu..'
GROUP BY  date_trunc('day', date)
HAVING COUNT(date_trunc('day', date)) = 24
ORDER BY date_trunc('day', date) ASC LIMIT 1;"""

Ответы (1 шт):

Автор решения: Akina

Мне необходимо найти минимальную дату в которой будут данные за 24 часа

SELECT "date"
FROM "table"
GROUP BY "date"
HAVING COUNT("date") = 24
ORDER BY "date" ASC LIMIT 1
→ Ссылка