Eu tenho esta consulta, ela retorna uma data agrupada varchar, e algumas somas. Essas somas são passagens de veículos no pedágio que eu trabalho, só para vocês entenderem.
Segue consulta que eu estou realizando:
SELECT SUBSTR(CAB_MOMENTO,1,12),
Sum(CASE WHEN COMVSAUTO = '1' AND NOME IN ('SUL','OESTE') THEN 1 ELSE 0 END)
SUL_OESTE_AUTO,
Sum(CASE WHEN COMVSAUTO = '0' AND NOME IN ('SUL','OESTE') THEN 1 ELSE 0 END)
SUL_OESTE_COM,
Sum(CASE WHEN COMVSAUTO = '1' AND NOME IN ('NORTE','LESTE') THEN 1 ELSE 0
END) NORTE_LESTE_AUTO,
Sum(CASE WHEN COMVSAUTO = '0' AND NOME IN ('NORTE','LESTE') THEN 1 ELSE 0
END) NORTE_LESTE_COM FROM
(SELECT a.idtransaccion, a.cab_momento, a.cab_via, a.comvsauto, b.NOME
FROM
(select idtransaccion, cab_momento, cab_via, cab_estacion AS ESTACION,
CASE ctl_clase
WHEN '01' THEN 1
WHEN '07' THEN 1
WHEN '08' THEN 1
ELSE 0
END comvsauto
FROM usrhost.atransaccion
WHERE cab_momento > '20170818000000') a
INNER join
(SELECT sen.estacion AS ESTACION, via.via AS VIA, sen.nome AS NOME FROM
usrhost.aestacion_sentido sen
INNER JOIN usrhost.avia via ON
sen.estacion = via.estacion
AND SubStr(via.via,3,1) = sen.sentido
ORDER BY 1,2) b ON
b.VIA = a.cab_via
AND b.ESTACION = a.ESTACION)
GROUP BY SUBSTR(CAB_MOMENTO,1,12)
ORDER BY 1
O que eu preciso fazer é somar os dados de 15 em 15 minutos, ou seja, usando a coluna um, eu preciso pegar as 15 primeiras linhas e somar todos os registros, depois pegar as outras 15 linhas e somar os registros e assim por diante.
Por exemplo:
Do minuto X para o minuto Y - 1231 | 12314 | 1241 | 21415
Do minuto X+15 para o minuto Y+15 - 1111 | 13344 | 1345 | 22455 ...
Agradeço desde já.