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

Získejte hodnotu mezi 2. a 3. čárkou

select 
  regexp_substr('2901 MAIN ST,CORNING,NY,14830', '(.*?,){2}(.*?),', 1, 1, '', 2) 
from dual

Obecně

n_th_component := 
  regexp_substr(string, '(.*?,){'||(n-1)||'}([^,]*)', 1, 1, '', 2);

Příklad:

select 
  n,  
  regexp_substr('2901 MAIN ST,CORNING,NY,14830', 
                '(.*?,){'||(n-1)||'}([^,]*)', 1, 1, '', 2)
from (select level n from dual connect by level <= 4)


  1. Vytvořte dotaz pro získání počtu nedokončených skupin hovorů podle 2 polí

  2. Generovat GUID v MySQL pro existující data?

  3. Jak DROP sloupec z tabulky v MySQL pomocí čísla sloupce

  4. Alternativa pro funkci dekódování