sql >> Database teknologi >  >> RDS >> Oracle

Sådan opdeles en kommasepareret streng i Oracle

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

Først vil vi danne en forespørgsel, der opdeler denne kommaseparerede streng og giver de individuelle strenge som rækker.

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  

Ovenstående forespørgsel itererer gennem den kommaseparerede streng, søger efter kommaet (,) og deler derefter strengen ved at behandle kommaet som skilletegn. Den returnerer strengen som en række, hver gang den rammer et skilletegn.



  1. SQLite Tutorial:Alt hvad du behøver at vide

  2. Sådan opdateres Oracle Clob ved hjælp af JDBC

  3. PostgreSQL tilbagekalder tilladelser fra pg_catalog-tabeller

  4. 11 måder at hente en primær nøgle i SQL Server (T-SQL eksempler)