Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle:Замяна на нечислови знаци в низ

Можете да използвате REGEXP_REPLACE от Oracle 10:

SELECT REGEXP_REPLACE('+34 (947) 123 456 ext. 2013', '[^0-9]+', '')
FROM DUAL

Този пример връща 349471234562013 .

Алтернативните синтаксиси включват:

  • POSIX символни класове:

    '[^[:digit:]]+'
    
  • Разширения, повлияни от Perl (от Oracle 11):

    '\D+'
    


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Таблица със заявки с различен списък от променливи, използвайки like

  2. Как да вмъкна времева марка в Oracle?

  3. Oracle SQL Constraint where клауза

  4. Създаване на профили в Oracle за потребителска сигурност

  5. Как да оптимизирате заявка на Oracle, която има to_char в клауза where за дата