Il n'y a pas de fonction directe pour cela, mais vous pouvez le faire avec un remplacement :
declare @myvar varchar(20)
set @myvar = 'Hello World'
select len(@myvar) - len(replace(@myvar,'o',''))
En gros, cela vous indique combien de personnages ont été supprimés, et donc combien d'instances il y a eu.
Extra :
Ce qui précède peut être étendu pour compter les occurrences d'une chaîne de caractères multiples en divisant par la longueur de la chaîne recherchée. Par exemple :
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)
0 votes
Cela pourrait aider social.msdn.microsoft.com/Forums/fr/transactsql/thread/
1 votes
Essayez la question similaire suivante lien
0 votes
Duplicata de SO Comment compter le nombre d'occurrences d'une certaine sous-chaîne dans un varchar SQL ? qui est plus ancien et a plus de réponses.