我怎样才能找到string2中string1的出现次数

时间:2011-06-23 09:22:38

标签: sql sql-server-2008

str2 ='welcome to sql server. Sql server is a product of Microsoft sql' 
str1 = 'sql'

我如何找到str2中str1的出现次数。请帮我找到它。

4 个答案:

答案 0 :(得分:3)

这应该可以解决问题:

DECLARE @str1 VARCHAR(10) 
SET @str1 = 'sql'
DECLARE @str2 VARCHAR(100) 
SET @str2 = 'welcome to sql server. Sql server is a product of Microsoft sql' 

SELECT (DATALENGTH(@str2) - DATALENGTH(REPLACE(@str2, @str1, ''))) / DATALENGTH(@str1)

这只是从@ str2中删除@ str1的所有实例(使用REPLACE),将长度差异与@ str2的原始值进行比较。这给出了已删除的字符总数,因此除以@ str1的长度,以找出删除的实例数。

答案 1 :(得分:1)

declare @Str1 varchar(10)
declare @Str2 varchar(100)

set @Str1 = 'sql'
set @Str2 ='welcome to sql server. Sql server is a product of Microsoft sql' 

select (datalength(@Str2) - datalength(replace(@Str2, @Str1, ''))) / datalength(@Str1)

答案 2 :(得分:0)

你正在寻找

CHARINDEX

答案 3 :(得分:0)

如何使用COUNT和GROUP BY('sql')?