Split dem VARCHAR-Datentyp in DB2 ruft einen Wert innerhalb

Ich habe eine VARCHAR Spalte enthält 5 Informationen (2 CHAR(3) und 3 TIMESTAMP) getrennt mit '$'.

CREATE TABLE MYTABLE (
  COL VARCHAR(256) NOT NULL
);

INSERT INTO MYTABLE 
VALUES
    ( 'AAA$000$2009-10-10 10:50:00$null$null$null' ),
    ( 'AAB$020$2007-04-10 10:50:00$null$null$null' ),
    ( 'AAC$780$null$2007-04-10 10:50:00$2009-04-10 10:50:00$null' )
;

Möchte ich zum extrahieren der 4. Feld ...

'AAA$000$2009-10-10 10:50:00$null$null$null'
                             ^^^^ this field

... so etwas wie

SELECT SPLIT(COL, '$', 4) FROM MYTABLE

1
-----
'null'
'null'
'2009-04-10 10:50:00'

Ich bin auf der Suche, in dieser Reihenfolge :

  1. Eine DB2-build-string-Funktion
  2. Eine embeddable Aussage wie SUBSTR(COL, POSSTR(COL)+1)...
  3. Eine Benutzer-definierte Funktion verhält sich wie SPLIT

Präzision : ja, ich tun wissen, dass es nicht eine gute Idee zu haben, wie Spalten...

Schreibe einen Kommentar