Za předpokladu, že váš znak zalomení řádku je CHR(10), mělo by fungovat něco jako následující:
SELECT TRIM(REGEXP_REPLACE(addr, '(.*)' || CHR(10) || '.*' || CHR(10) || '.*', '\1')) AS STREET_ADDR,
TRIM(REGEXP_REPLACE(addr, '.*' || CHR(10) || '(.*)' || CHR(10) || '.*', '\1')) AS CITY,
TRIM(REGEXP_REPLACE(addr, '.*' || CHR(10) || '.*' || CHR(10) || '(.*)', '\1')) AS STATE
FROM addr_table;
Pokud je addr_table vyplněno pomocí následujícího příkazu:
INSERT INTO addr_table(addr)
VALUES('12345 MY STREET' || CHR(10) || 'NOWHERESVILLE' || CHR(10) || 'ASTATE');
výše uvedený SELECT se vrátí
STREET_ADDR CITY STATE
12345 MY STREET NOWHERESVILLE ASTATE
Sdílejte a užívejte