str2 ='welcome to sql server. Sql server is a product of Microsoft sql'
str1 = 'sql'
我如何找到str2中str1的出现次数。请帮我找到它。
答案 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)
答案 3 :(得分:0)
如何使用COUNT和GROUP BY('sql')?