sql >> Databáze >  >> RDS >> Oracle

Oracle REGEX_SUBSTR nerespektuje hodnoty null

Obávám se, že vaše přijatá odpověď nezvládá případ, kdy potřebujete hodnotu za nulovou pozicí (zkuste získat 6. pole):

SQL> select REGEXP_SUBSTR ('2035197553,2,S,14-JUN-14,,P', '[^,]*', 1, 6) phn_end
_dt
  2  from dual;

P
-

Domnívám se, že místo toho musíte udělat toto (funguje na 11g):

SQL> select REGEXP_SUBSTR ('2035197553,2,S,14-JUN-14,,P', '([^,]*)(,|$)', 1, 6,
NULL, 1) phn_end_dt
  2  from dual;

P
-
P

Právě jsem to objevil po zveřejnění své vlastní otázky:REGEX pro výběr n-té hodnoty ze seznamu s povolením null



  1. Jak shodit stůl v oracle

  2. SQL:transformace řádků na sloupce v MySQL (příkaz SELECT)

  3. Manipulace se SEO Friendly URL s neanglickými znaky

  4. SQL Server 2016:Návrhář zobrazení