Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Nhận giá trị giữa dấu phẩy thứ 2 và thứ 3

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

Nói chung,

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

Ví dụ:

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. Việc chọn trường riêng biệt và số hàng chỉ để hiển thị số id sẽ cung cấp dữ liệu trùng lặp

  2. Hiển thị các giá trị được nối trong Truy vấn SQL

  3. Oracle lấy tên bảng dựa trên giá trị cột

  4. Có cách nào để cải thiện truy vấn MERGE không?

  5. Oracle:trình tự MySequence.currval chưa được xác định trong phiên này