Oracle
 sql >> Base de données >  >> RDS >> Oracle

Imprimer des caractères un par un à partir d'une chaîne (VARCHAR2) oracle sql sans utiliser plsql et également sans utiliser dual

C'est une simple utilisation de SUBSTR et CONNECTER PAR NIVEAU . Jetez un oeil à Comment diviser une chaîne en lignes .

Par exemple,

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

S
-
M
A
N
O
J

SQL>

Vous ne savez pas ce que vous entendez par "ne pas utiliser la table DUAL", mais la table double ci-dessus est simplement utilisée pour créer les exemples de données à des fins de démonstration. Dans votre cas, vous pouvez utiliser le nom de la colonne au lieu de coder en dur la valeur, et vous pouvez utiliser une sous-requête à la place de la table double si votre valeur est le résultat d'une sous-requête.