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

Jak podzielić ciąg oddzielony przecinkami w Oracle

na podstawie https://blogs.oracle.com/aramamoo/how-to-split-comma-separated-string-and-pass-to-in-clause-of-select-statement:

Najpierw utworzymy zapytanie, które dzieli ten ciąg oddzielony przecinkami i podaje poszczególne ciągi jako wiersze.

SQL> select regexp_substr('20.4,12.5,3.5,0.2,0.2','[^,]+', 1, level) from dual
     connect by regexp_substr('20.4,12.5,3.5,0.2,0.2', '[^,]+', 1, level) is not null;


REGEXP_SUBSTR('20.4,1
---------------------
20.4                 
12.5                 
3.5                  
0.2                  
0.2  

Powyższe zapytanie iteruje przez ciąg oddzielony przecinkami, wyszukuje przecinek (,), a następnie dzieli ciąg, traktując przecinek jako ogranicznik. Zwraca ciąg w postaci wiersza, ilekroć natrafi na ogranicznik.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uzyskiwanie uchwytu do natywnego połączenia Oracle w Hibernate 4 w celu uruchomienia przechowywanego procesu

  2. Wykryj, czy wartość zawiera co najmniej jedną cyfrę w Oracle

  3. Błąd Oracle ORA-12154 w lokalnych usługach IIS, ale nie w programie Visual Studio Development Server

  4. Tylko kopia zapasowa schematu SQL?

  5. 4 sposoby formatowania liczby bez ułamków dziesiętnych w Oracle