Oracle
 sql >> Database >  >> RDS >> Oracle

Genera tutte le possibili combinazioni di stringhe di una certa lunghezza in Oracle

Non hai bisogno di PL/SQL per generare una sequenza alfabetica. Potresti farlo in puro SQL utilizzando Generatore di righe metodo.

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
/

Quanto sopra ti darebbe tutte le possibili combinazioni c1 , c2 , c3 per uno e due caratteri. Per più combinazioni, puoi semplicemente aggiungere combinazioni come c4 , c5 ecc.