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

Как да преброите броя на появяванията на символ в стойност на Oracle varchar?

Ето ви:

select length('123-345-566') - length(replace('123-345-566','-',null)) 
from dual;

Технически, ако низът, който искате да проверите, съдържа само символа, който искате да преброите, горната заявка ще върне NULL; следната заявка ще даде правилния отговор във всички случаи:

select coalesce(length('123-345-566') - length(replace('123-345-566','-',null)), length('123-345-566'), 0) 
from dual;

Крайната 0 в coalesce улавя случая, когато броите в празен низ (т.е. NULL, защото length(NULL) =NULL в ORACLE).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изберете последния ред за всяка група от oracle

  2. Автоматично увеличение в Oracle без използване на тригер

  3. Въведение в PL/SQL Ref курсори в Oracle Database

  4. Водещи въпроси относно JAVA/JRE в приложенията на Oracle

  5. Как да промените приоритета за едновременна програма