Oracle
 sql >> Base de données >  >> RDS >> Oracle

oracle - interroger les valeurs NULL dans une requête non pivotée

Utilisez UNPIVOT INCLUDE NULLS :

SQL Fiddle

Configuration du schéma Oracle 11g R2 :

CREATE TABLE test ( id, a, b, c, d ) AS
SELECT 1, 1, 2, 3, 4 FROM DUAL UNION ALL
SELECT 2, 1, NULL, 3, NULL FROM DUAL;

Requête 1 :

SELECT *
FROM   test
UNPIVOT INCLUDE NULLS ( value FOR name IN ( a, b, c, d ) )

Résultats :

| ID | NAME |  VALUE |
|----|------|--------|
|  1 |    A |      1 |
|  1 |    B |      2 |
|  1 |    C |      3 |
|  1 |    D |      4 |
|  2 |    A |      1 |
|  2 |    B | (null) |
|  2 |    C |      3 |
|  2 |    D | (null) |