1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| WITH
AN AS ( SELECT 2015 AS AN FROM DUAL
UNION ALL SELECT 2016 FROM DUAL
),
JFF AS ( SELECT 1 AS MOIS, 1 AS JOUR FROM DUAL
UNION ALL SELECT 5, 1 FROM DUAL
UNION ALL SELECT 5, 8 FROM DUAL
UNION ALL SELECT 7, 14 FROM DUAL
UNION ALL SELECT 8, 15 FROM DUAL
UNION ALL SELECT 11, 1 FROM DUAL
UNION ALL SELECT 11, 11 FROM DUAL
UNION ALL SELECT 12, 25 FROM DUAL
),
JFV AS ( SELECT 3 AS MOIS, 28 AS JOUR, 2016 AS AN FROM DUAL
UNION ALL SELECT 5, 5, 2016 FROM DUAL
UNION ALL SELECT 5, 16, 2016 FROM DUAL
UNION ALL SELECT 4, 6, 2015 FROM DUAL
UNION ALL SELECT 5, 14, 2015 FROM DUAL
UNION ALL SELECT 5, 25, 2015 FROM DUAL
),
JF AS (SELECT DATEFROMPARTS(AN, MOIS, JOUR) AS D FROM JFV
UNION ALL
SELECT DATEFROMPARTS(AN, MOIS, JOUR) FROM JFF CROSS JOIN AN)
SELECT COUNT(*)
FROM MaTableDeTravail
WHERE MaDate NOT IN (SELECT D FROM JF); |
Partager