Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Uzyskaj wartość między 2 a 3 przecinkiem

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

Ogólnie

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

Przykład:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zautomatyzowane narzędzie do migracji schematów Oracle

  2. Dlaczego Oracle dodaje tutaj ukrytą kolumnę?

  3. Korzystanie z Oracle JDeveloper 12c z bazą danych Oracle, część 1

  4. Oracle:Co oznacza „wykonaj natychmiast”?

  5. Czy istnieje sposób na uzyskanie numeru wiersza w Mysql, takiego jak rownum w Oracle?