Я использую MySql и должен создать очень сложный отчет, который показывает состояние событий.
Например:
event_id | state | create_time
----------------------------------------------------
1 | PENDING | 2019-04-21 12:55:59.312
1 | COMPLETED | 2019-04-21 12:55:59.339
2 | PENDING | 2019-04-21 11:40:21.699
3 | PENDING | 2019-04-21 11:40:21.699
3 | FAILED | 2019-04-21 11:40:21.600
3 | COMPLETED | 2019-04-21 11:40:21.578
Мне нужно выбрать строки в соответствии с предпочтениями состояний:
- СБОЙ + ЗАВЕРШЕНО + В ОЖИДАНИИ -> СБОЙ
- ЗАВЕРШЕНО + В ОЖИДАНИИ -> ЗАВЕРШЕНО
- В ОЖИДАНИИ -> В ОЖИДАНИИ
Это должно быть разбито на страницы с использованием OFFSET и SIZE.
Каждое событие будет показано один раз.
ожидаемый результат:
event_id | state | create_time
----------------------------------------------------
1 | COMPLETED | 2019-04-21 12:55:59.339
2 | PENDING | 2019-04-21 11:40:21.699
3 | FAILED | 2019-04-21 11:40:21.600
Как я могу сделать это в одном запросе SQL.
С уважением,
Идо