У меня есть таблица, содержащая следующие поля:
дата, время, узел, результат
описание некоторых числовых результатов для разных узлов в разные даты и время в течение каждого дня. Типичный список будет выглядеть примерно так:
date | time | node | result
----------------------------------
2011-03-01 | 10:02 | A | 10
2011-03-01 | 11:02 | A | 20
2011-03-02 | 03:13 | A | 23
2011-03-02 | 12:15 | A | 18
2011-03-02 | 13:15 | A | 8
2011-03-01 | 13:12 | B | 2
2011-03-01 | 14:26 | B | 1
2011-03-02 | 08:00 | B | 6
2011-03-02 | 07:22 | B | 3
2011-03-02 | 21:19 | B | 4
Я хочу сформировать запрос, который будет получать последний результат каждого дня для каждого узла, так что я бы получил что-то вроде этого:
date | time | node | latest
-----------------------------------
2011-03-01 | 11:02 | A | 20
2011-03-01 | 14:26 | B | 1
2011-03-02 | 13:15 | A | 8
2011-03-02 | 21:19 | B | 4
Я думал о создании group by date, node
, но затем извлечение последнего значения было беспорядком (я использовал group_concat( result order by time )
и использовал SUBSTRING()
, чтобы получить последнее значение. Бааа, я знаю). Есть ли простой способ сделать это в MySQL?