У меня есть данные по 3 индексам NQ, ES, YM за последние 4 года
это 3 актива, максимумы и минимумы которых каждые 1 час.
Теперь я хочу создать новую таблицу, куда я вставляю данные за каждые 7 дней (неделю).
Я хочу
start date, end date,
NQ high value, NQ High Date, nq high time
Nq low value, nq low date, nq low time
ES high value, ES High Date, ES high time
ES low value, ES low date, ES low time
YM high value, YM High Date, YM high time
YM low value, YM low date, YM low time
Итак, я выполнил 6 запросов выбора: 3 для максимума каждого актива и 3 для минимума каждого актива. Пример:
select NQhigh, candleDate, candleTime from Data_table where
-- i set the start date from all the data
set @Temp_start_date = ( select Min(candleDate) from Data_table );
SELECT NQLow, candleDate, candleTime FROM Data_table WHERE candleDate BETWEEN @Temp_start_date AND DATE_ADD(@Temp_start_date, INTERVAL 7 DAY)
AND NQLow = (SELECT MIN(NQLow) FROM Data_table WHERE candleDate BETWEEN @Temp_start_date AND DATE_ADD(@Temp_start_date, INTERVAL 7 DAY) ),
-- and the reason I added Interval 7 day so that it add 7 days and get data only for a week
Таким же образом я написал максимумы и минимумы всех трех активов. Теперь я хочу присоединиться к ним в следующем порядке:
start date, end date, NQ high value, NQ High Date, nq high time , Nq low value, nq low date, nq low time, ES high value, ES High Date, ES high time , ES low value, ES low date, ES low time, YM high value, YM High Date, YM high time , YM low value, YM low date, YM low time
Подробнее здесь: https://stackoverflow.com/questions/798 ... ing-unique