1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| WITH CTEA (DEBUT,CODE_STATUS, REF_TURBINE_VALOREM) AS
(select DEBUT_STATUS,CODE_STATUS, REF_TURBINE_VALOREM
from STATUS
where CODE_STATUS='10'
order by REF_TURBINE_VALOREM,DEBUT_STATUS ASC
),
CTEB (CODE_STATUS, REF_TURBINE_VALOREM,DEBUT,FIN) AS
(SELECT STATUS.CODE_STATUS,STATUS.REF_TURBINE_VALOREM,CTEA.DEBUT,MIN(STATUS.DEBUT_STATUS)
FROM STATUS
JOIN CTEA ON CTEA.CODE_STATUS = STATUS.CODE_STATUS
AND CTEA.REF_TURBINE_VALOREM = STATUS.REF_TURBINE_VALOREM
AND STATUS.DEBUT_STATUS > CTEA.DEBUT
GROUP BY 1,2,3
),
CTEC (CODE_STATUS, REF_TURBINE_VALOREM,DUREE ) AS
(SELECT CODE_STATUS, REF_TURBINE_VALOREM, DATEDIFF(SECOND,DEBUT,FIN)
FROM CTEB
)
SELECT CODE_STATUS, REF_TURBINE_VALOREM,COUNT(*) OCCURENCE,SUM(DUREE) DUREE_EN_SECONDE
FROM CTEC
GROUP BY 1,2 |
Partager