sql >> Database >  >> RDS >> Oracle

Oracle - enkele rij splitsen in meerdere rijen

De eenvoudigste manier is met een union all :

select object_tested, test_date, test_a as test, test_a_result as test_result
from table t
union all
select object_tested, test_date, test_b as test, test_b_result as test_result
from table t;

Als u het type test in de uitvoer wilt:

select object_tested, test_date, 'a' as test_type, test_a as test, test_a_result as test_result
from table t
union all
select object_tested, test_date, 'b' as test_type, test_b as test, test_b_result as test_result
from table t;

Oracle 11 ondersteunt ook de unpivot operator die iets soortgelijks doet. Als je een erg grote tabel hebt en prestaties belangrijk vindt, unpivot of een methode die gebruikmaakt van join kan werken.



  1. MYSQL en RDBMS

  2. MySQL-transactie over twee databases op verschillende servers

  3. Hoe selecteer je een datumbereik in postgres?

  4. Microsoft Access is NIET dood en VBA ook niet