sql >> Database teknologi >  >> RDS >> Sqlserver

Antal gange et bestemt tegn optræder i en streng

Der er ingen direkte funktion til dette, men du kan gøre det med en erstatning:

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

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

Grundlæggende fortæller dette dig, hvor mange tegn der blev fjernet, og derfor hvor mange forekomster af det der var.

Ekstra:

Ovenstående kan udvides til at tælle forekomsterne af en multi-char-streng ved at dividere med længden af ​​den streng, der søges efter. For eksempel:

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. Hvordan fjerner man alle ikke-alfanumeriske tegn fra en streng i MySQL?

  2. Fremskynd op til_sql(), når du skriver Pandas DataFrame til Oracle-database ved hjælp af SqlAlchemy og cx_Oracle

  3. Postgres/JSON - opdater alle array-elementer

  4. Fire almindelige myter om cloud-teknologi