sql >> Databasteknik >  >> RDS >> Oracle

Skriva ut tecken ett efter ett från en sträng(VARCHAR2) oracle sql utan att använda plsql och även utan att använda dual

Det är en enkel användning av SUBSTR och ANSLUT EFTER NIVÅ . Ta en titt på Hur man delar upp en sträng i rader .

Till exempel,

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

S
-
M
A
N
O
J

SQL>

Inte säker på vad du menar med att "inte använda DUAL-tabellen", men den dubbla tabellen ovan används bara för att skapa exempeldata för demonstration. I ditt fall kan du använda kolumnnamnet istället för att hårdkoda värdet, och du kan använda en underfråga i stället för den dubbla tabellen om ditt värde är ett resultat av en underfråga.




  1. PHP, text ekar ur databasen utan ny rad, allt i ett stycke

  2. Söka efter en kolumn som innehåller CSV-data i en MySQL-tabell för att se om det finns indatavärden

  3. Databasen "xxx" kan inte öppnas eftersom den är version 904

  4. Oracle:Använder Pseudo-kolumnvärdet i samma Select-sats