当前位置:  开发笔记 > 数据库 > 正文

如何使用sql找到字符串中特定字符的出现次数?

如何解决《如何使用sql找到字符串中特定字符的出现次数?》经验,为你挑选了2个好方法。

如何使用sql找到字符串中特定字符的出现次数?

示例:我想查找字母"d"出现在此字符串中的次数.

declare @string varchar(100)
select @string = 'sfdasadhfasjfdlsajflsadsadsdadsa'

Mladen Prajd.. 56

干得好:

declare @string varchar(100)
select @string = 'sfdasadhfasjfdlsajflsadsadsdadsa'
SELECT LEN(@string) - LEN(REPLACE(@string, 'd', '')) AS D_Count


Rob Farley.. 13

如果你想让它更通用一点,你应该除以你想要的东西的长度.像这样:

declare @searchstring varchar(10);
set @searchstring = 'Rob';

select original_string, 
(len(orginal_string) - len(replace(original_string, @searchstring, '')) 
   / len(@searchstring)
from someTable;

这是因为每次找到"Rob"时,都会删除三个字符.所以当你删除六个字符时,你已经发现了两次'Rob'.



1> Mladen Prajd..:

干得好:

declare @string varchar(100)
select @string = 'sfdasadhfasjfdlsajflsadsadsdadsa'
SELECT LEN(@string) - LEN(REPLACE(@string, 'd', '')) AS D_Count



2> Rob Farley..:

如果你想让它更通用一点,你应该除以你想要的东西的长度.像这样:

declare @searchstring varchar(10);
set @searchstring = 'Rob';

select original_string, 
(len(orginal_string) - len(replace(original_string, @searchstring, '')) 
   / len(@searchstring)
from someTable;

这是因为每次找到"Rob"时,都会删除三个字符.所以当你删除六个字符时,你已经发现了两次'Rob'.

推荐阅读
依然-狠幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有