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

Stampa di caratteri uno per uno da una stringa (VARCHAR2) oracle sql senza usare plsql e anche senza usare dual

È un semplice utilizzo di SUBSTR e CONNESSIONE PER LIVELLO . Dai un'occhiata a Come dividere una stringa in righe .

Ad esempio,

SQL> SELECT SUBSTR('MANOJ', level, 1) str
  2  FROM dual
  3    CONNECT BY LEVEL <= LENGTH('MANOJ')
  4  /

S
-
M
A
N
O
J

SQL>

Non sono sicuro di cosa intendi con "non utilizzare la tabella DUAL", ma la tabella doppia sopra viene utilizzata solo per creare i dati di esempio per la dimostrazione. Nel tuo caso, potresti utilizzare il nome della colonna invece di codificare il valore e potresti utilizzare una sottoquery al posto della doppia tabella se il tuo valore è il risultato di una sottoquery.