sql >> Base de Datos >  >> RDS >> Oracle

Genere todas las combinaciones posibles de cadenas de cierta longitud en Oracle

No necesita PL/SQL para generar una secuencia alfabética. Podrías hacerlo en puro SQL utilizando Generador de filas método.

WITH combinations AS
  (SELECT chr( ascii('A')+level-1 ) c FROM dual CONNECT BY level <= 26
  )
SELECT * FROM combinations
UNION ALL
SELECT c1.c || c2.c FROM combinations c1, combinations c2
UNION ALL
SELECT c1.c
  || c2.c
  || c3.c
FROM combinations c1,
  combinations c2,
  combinations c3
/

Lo anterior le daría todas las combinaciones posibles c1 , c2 , c3 para uno y dos personajes. Para más combinaciones, simplemente puede agregar combinaciones como c4 , c5 etc.