Benutzer-Werkzeuge

Webseiten-Werkzeuge


prog:sql_regular_expression

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
prog:sql_regular_expression [2022/11/08 17:11] – [RegEx und ein Outer Join mit der (+) Syntax] gpipperrprog:sql_regular_expression [2022/11/08 17:19] (aktuell) – [RegEx und ein Outer Join mit der (+) Syntax] gpipperr
Zeile 468: Zeile 468:
           ),':')           ),':')
         as Column3         as Column3
-from  data a;       +from  data a;   
 + 
 +Column3 
 +-------- 
 + 
 +ValueC     
  
 </code> </code>
  
 Der Trick dahinter ist es den String zu zerlegen mit Matches für eine Zeichenkette OHNE den "|" und den "3" Match herauszufiltern, diesen Teilstring dann bei ":" zu trennen und dann mit Trimmen dafür sorgen das Leerzeichen und das ":" verschwinden. Der Trick dahinter ist es den String zu zerlegen mit Matches für eine Zeichenkette OHNE den "|" und den "3" Match herauszufiltern, diesen Teilstring dann bei ":" zu trennen und dann mit Trimmen dafür sorgen das Leerzeichen und das ":" verschwinden.
 +
 +Alle in einer Spalte darstellen:
 +
 +<code sql>
 +WITH DATA AS ( 
 +   SELECT 'Column1:ValueA | Column2:ValueB | Column3:ValueC | Column4:ValueD | Column5:ValueE |'  AS log_val 
 +      FROM dual
 +  )
 +  SELECT trim(
 +               regexp_substr(a.log_val, '[^|]+', 1, level)
 +        ) as columValues
 +   FROM DATA a 
 +  CONNECT BY level<regexp_count(a.log_val,'[^|]+')+1;
 +  
 +columValues
 +----------
 +Column1:ValueA
 +Column2:ValueB
 +Column3:ValueC
 +Column4:ValueD
 +Column5:ValueE  
 +
 +</code>
  
 ---- ----
prog/sql_regular_expression.txt · Zuletzt geändert: 2022/11/08 17:19 von gpipperr