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

Брой пъти, когато даден знак се появява в низ

Няма директна функция за това, но можете да го направите със замяна:

declare @myvar varchar(20)
set @myvar = 'Hello World'

select len(@myvar) - len(replace(@myvar,'o',''))

По принцип това ви казва колко знака са били премахнати и следователно колко екземпляра е имало.

Допълнително:

Посоченото по-горе може да бъде разширено, за да преброи случаите на низ с няколко символа, като се раздели на дължината на търсения низ. Например:

declare @myvar varchar(max), @tocount varchar(20)
set @myvar = 'Hello World, Hello World'
set @tocount = 'lo'

select (len(@myvar) - len(replace(@myvar,@tocount,''))) / LEN(@tocount)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да зададете езика по подразбиране за всички нови влизания в SQL Server (T-SQL)

  2. Как мога да получа имена на колони от таблица в SQL Server?

  3. Може ли SQL Server да изпрати уеб заявка?

  4. 3 начина да получите типа данни на колона в SQL Server (T-SQL)

  5. Как да шифровате съхранена процедура в SQL Server