sql >> Database >  >> RDS >> Oracle

Bereikvultabel

U kunt het volgende gebruiken:

SELECT
    DISTINCT PREFIX || ( START_RANGE + LEVEL - 1 )
FROM
    (
        SELECT
            REGEXP_SUBSTR(START_RANGE, '^[[:alpha:]]+') AS PREFIX,
            REGEXP_SUBSTR(START_RANGE, '\d+$') AS START_RANGE,
            REGEXP_SUBSTR(END_RANGE, '\d+$') AS END_RANGE
        FROM
            TEST
    )
CONNECT BY
    LEVEL <= END_RANGE - START_RANGE + 1
ORDER BY 1;

Ik neem aan dat je begin- en eindbereik hetzelfde voorvoegsel hebben met format(string||nummer)

db<>fiddle-demo

Proost!!



  1. MySQL GROUP BY-gedrag

  2. Converteer SQL naar SQL-alchemie

  3. SQLSTATE[42000]:Syntaxisfout of toegangsfout:1064

  4. Postgresql maakt geen db met "createdb" als superuser, maar geeft geen fouten uit