Count Occurrences of Characters in a String – SQL Server

While implementing a feature of a GUI Editor, we came across a requirement to count the occurrences of characters in a string, stored in our SQL Server Database.

I was suggested a simple and efficient script that I am sharing with all of you for your use.


DECLARE @longWord varchar(28)='AntiDisEstablishmentArianism'
SELECT CountCharacters =
DATALENGTH(@longWord)
- DATALENGTH (REPLACE(REPLACE(LOWER(@longWord),'a',''),'i',''))


OUTPUT

image

As simple as it gets without using the SUBSTRING, PATINDEX or GROUP BY functions!

1 comment:

  1. It is recomended using the less known text function - DATALENGTH instead of LEN function because LEN function is doing RTrim to the string.

    ReplyDelete