1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| WITH T AS (SELECT 'ARBRI' entite, 'CHLORE_ANS' produit FROM dual
UNION ALL SELECT 'ARBRI', 'CHLORE_CIT' FROM dual
UNION ALL SELECT 'ARBRI', 'CHLORE_PECQ' FROM dual
UNION ALL SELECT 'ARBRI', 'CHLORE_SORT_BASSE' FROM dual
UNION ALL SELECT 'ARBRI', 'CHLORE_SORT_HAUTE' FROM dual
UNION ALL SELECT 'ARBRI', 'CHLORE_SORT_UT' FROM dual
UNION ALL SELECT 'ARBRI', 'NITRATE' FROM dual
UNION ALL SELECT 'ARBRI', 'NIV_D' FROM dual
UNION ALL SELECT 'ARBRI', 'NIV_G' FROM dual
UNION ALL SELECT 'ARBRI', 'PRES_ESOIL' FROM dual
UNION ALL SELECT 'ARBRI', 'PRES_PECQ' FROM dual
UNION ALL SELECT 'ARBRI', 'PRES_SORT_BASSE' FROM dual
UNION ALL SELECT 'ARBRI', 'PRES_SORT_HAUTE' FROM dual
UNION ALL SELECT 'ARBRI', 'TURBI_ANS' FROM dual
UNION ALL SELECT 'ARBRI', 'TURBI_PECQ' FROM dual
UNION ALL SELECT 'ARBRI', 'TURBI_SORT' FROM dual
UNION ALL SELECT 'MPECQ', 'CHLORE_ENT' FROM dual
UNION ALL SELECT 'MPECQ', 'CHLORE_SORT' FROM dual
UNION ALL SELECT 'MPECQ', 'NIV_D' FROM dual
UNION ALL SELECT 'MPECQ', 'NIV_G' FROM dual
UNION ALL SELECT 'MPECQ', 'NIV_REF' FROM dual
)
SELECT entite, produit, SUBSTR(produit, 1, INSTR(produit, '_')-1) grp, row_number() OVER (PARTITION BY entite, SUBSTR(produit, 1, INSTR(produit, '_')-1) ORDER BY produit) nb
FROM t |
Partager