#mysql #sql
Вопрос:
У меня есть данные в базе данных mysql в формате ниже, и я пытаюсь получить результат в указанном формате
У меня есть данные в БД в формате ниже:
**name, stockTimeInterval, date, stockTime, stockOpen** WIPRO, 5_min_stock_data, 2021-01-01 , 09:15:00, 385.05 WIPRO, 5_min_stock_data, 2021-01-01 , 09:20:00, 386.60 WIPRO, 5_min_stock_data, 2021-01-01 , 09:25:00, 387.45 WIPRO, 5_min_stock_data, 2021-02-01 , 09:15:00, 385.05 WIPRO, 5_min_stock_data, 2021-02-01 , 09:20:00, 386.60 WIPRO, 5_min_stock_data, 2021-02-01 , 09:25:00, 387.45 WIPRO, 5_min_stock_data, 2021-03-01 , 09:15:00, 385.05 WIPRO, 5_min_stock_data, 2021-03-01 , 09:20:00, 386.60 WIPRO, 5_min_stock_data, 2021-03-01 , 09:25:00, 387.45
Вопрос: Как получить результат в формате:
**name, stockTimeInterval, date, stockTime, stockOpen** WIPRO, 5_min_stock_data, 2021-01-01 , 09:15:00, 385.05 WIPRO, 5_min_stock_data, 2021-02-01 , 09:15:00, 385.05 WIPRO, 5_min_stock_data, 2021-03-01 , 09:15:00, 385.05 WIPRO, 5_min_stock_data, 2021-01-01 , 09:20:00, 386.60 WIPRO, 5_min_stock_data, 2021-02-01 , 09:20:00, 386.60 WIPRO, 5_min_stock_data, 2021-03-01 , 09:20:00, 386.60 WIPRO, 5_min_stock_data, 2021-01-01 , 09:25:00, 387.45 WIPRO, 5_min_stock_data, 2021-02-01 , 09:25:00, 387.45 WIPRO, 5_min_stock_data, 2021-03-01 , 09:25:00, 387.45
Ответ №1:
Используйте двухуровневую сортировку:
SELECT name, stockTimeInterval, date, stockTime, stockOpen FROM yourTable ORDER BY name, stockTimeInterval, stockTime, date;
Обратите внимание, что stockTime
это происходит до date
того, как . Чаще всего дата и время находятся в одном поле даты и времени, а не в отдельных полях.