Как сгруппировать таблицу поминутно (почасово)?

Есть таблица с полями: рынок, время, объём торгов.
Как сгруппировать почасово каждый рынок с отображением торгов за данный час?
То есть

Рынок1 в 12:00  1000
    Рынок1 в 12:20  1100
    Рынок1 в 12:50  1400
    Рынок1 в 13:10  1450
    Рынок2 в 12:00  300

В ответе я хочу получить

Рынок1  12:00  1400
    Рынок1  13:00  1450
    Рынок2  12:00  300

Либо по-другому - состоянием на 12 часов на 13 часов...
  • Вопрос задан
  • 734 просмотра
Пригласить эксперта
Ответы на вопрос 3
@nozzy
Symfony, Laravel, SQL
SELECT
рынок,
SUM(объём_торгов),
TIMESTAMPADD(HOUR,TIMESTAMPDIFF(HOUR,CURDATE(),время),
    CURDATE()) AS round_date,
FROM your_table
GROUP BY рынок, round_date
Ответ написан
Комментировать
alexander_v_pryadko
@alexander_v_pryadko
e-commerce: автоматизация, интеграция, учет
выделить час и сгруппировать по этому столбцу
Ответ написан
0xD34F
@0xD34F
SELECT рынок, date_trunc('hour', время), объём_торгов
FROM таблица
WHERE (время, рынок) IN (
  SELECT max(время) AS время, рынок
  FROM таблица
  GROUP BY date_trunc('hour', время), рынок
)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы