sql >> Databasteknik >  >> RDS >> Oracle

Hur man utvecklar resultatet av en Oracle-fråga baserat på värdet på en kolumn

SQL Fiddle

Oracle 11g R2 Schema Setup :

CREATE TABLE test ( col1, col2 ) AS
          SELECT 'a', 2 FROM DUAL
UNION ALL SELECT 'b', 3 FROM DUAL
UNION ALL SELECT 'c', 1 FROM DUAL

Fråga 1 :

SELECT col1,
       col2
FROM   test t,
       TABLE(
         CAST( 
           MULTISET(
             SELECT LEVEL
             FROM   DUAL
             CONNECT BY LEVEL <= t.col2
           )
           AS SYS.ODCINUMBERLIST
         )
       )

Resultat :

| COL1 | COL2 |
|------|------|
|    a |    2 |
|    a |    2 |
|    b |    3 |
|    b |    3 |
|    b |    3 |
|    c |    1 |


  1. infoga eller utelämna poster i mysql-frågan baserat på resultatvillkor

  2. Gör ingenting i en triggerprocedur

  3. Mysql :Aggregationsfunktionen fungerar inte utan grupp efter

  4. Ett förberett uttalande, `WHERE .. IN(..)`-fråga och sortering - med MySQL