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

Jak wybrać podciąg w Oracle SQL do określonego znaku?

Użycie kombinacji SUBSTR, INSTR i NVL (dla łańcuchów bez podkreślenia) zwróci to, czego chcesz:

SELECT NVL(SUBSTR('ABC_blah', 0, INSTR('ABC_blah', '_')-1), 'ABC_blah') AS output
  FROM DUAL

Wynik:

output
------
ABC

Użyj:

SELECT NVL(SUBSTR(t.column, 0, INSTR(t.column, '_')-1), t.column) AS output
  FROM YOUR_TABLE t

Odniesienie:

  • SUBSTR
  • INSTR

Uzupełnienie

Jeśli używasz Oracle10g+, możesz użyć wyrażenia regularnego przez REGEXP_SUBSTR.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nie możesz użyć zapytania LIKE w PreparedStatement JDBC?

  2. Funkcja TRIM() w Oracle

  3. Dynamiczny DESC i ASC Oracle w kolejności do

  4. Lista języków obsługiwanych przez bazę danych Oracle

  5. Schemat inżynierii odwrotnej (wyrocznia) do ERD