SQL Server’da bugün bir colon içerisinde belirtmiş olduğum karakterin kaç tane olduğunu sayan bir sql sorgusuna ihtiyacım oldu ve sonuc olarak makalenin devamındaki sql sorgusu ortaya çıktı.
Alttaki sorguda ‘SQLSERVER’ kelimesi içerisinde S harfinin kaç defa geçtiğini bulan sql sorgusu yer almaktadır.
1 | Select Len('SQLSERVER') - LEN(REPLACE('SQLSERVER','S', '')) |
Üstteki sroguda SQLSERVER kelimelerinin olduğu yerlere isterseniz kolon adalarını girebilir isterseniz bir stored procedur yardımıyla declare anahtar kelimesinin kullanıp tanımlayacağınız değişkeni alttaki örnekte olduğu gibi kullanabilirsiniz.
1 2 3 4 5 | CREATE PROCEDURE TEST @Word VARCHAR(100), @Search VARCHAR(20) AS Select Len(@Word) - LEN(REPLACE(@Word,@Search, '')) |
Üstteki stored procedure kullanımı ise alttaki sorguda olduğu gibidir.
1 | EXEC dbo.TEST @Word = 'SQLSERVER', @Search = 'S' |
Sonuç olarak çıktı aşağıdaki gibidir.
2
Üstteki 2 sonucunun çıkmasının sebebi ‘SQLSERVER’ kelimesi içerisinde ‘S’ karakterinin 2 defa geçmesinden dolayı yukarıdaki sonucu vermiştir.