最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

[sqlserver]在text类型字段中查找字符串出现次数

来源:懂视网 责编:小采 时间:2020-11-09 15:23:41
文档

[sqlserver]在text类型字段中查找字符串出现次数

[sqlserver]在text类型字段中查找字符串出现次数:-- [sqlserver]在text类型字段中计算某一字符串出现的次数 declare @ table nvarchar ( 40 ) ; -- 查询表名 declare @ textfield nvarchar ( 40 ) ; -- 查询列名(text类型) declare @ findstr nvarchar ( 400 ) ;
推荐度:
导读[sqlserver]在text类型字段中查找字符串出现次数:-- [sqlserver]在text类型字段中计算某一字符串出现的次数 declare @ table nvarchar ( 40 ) ; -- 查询表名 declare @ textfield nvarchar ( 40 ) ; -- 查询列名(text类型) declare @ findstr nvarchar ( 400 ) ;

-- [sqlserver]在text类型字段中计算某一字符串出现的次数 declare @ table nvarchar ( 40 ) ; -- 查询表名 declare @ textfield nvarchar ( 40 ) ; -- 查询列名(text类型) declare @ findstr nvarchar ( 400 ) ; -- 查找的字符串(非空) declare @ step int

-- [sqlserver]在text类型字段中计算某一字符串出现的次数

declare @table nvarchar(40); -- 查询表名
declare @textfield nvarchar(40); -- 查询列名(text类型)
declare @findstr nvarchar(400); -- 查找的字符串(非空)
declare @step int; -- 每次从text字段截取的字符串长度
declare @findcount int; -- 出现次数
declare @sql nvarchar(400);
declare @str nvarchar(4000);
declare @findpos int;
declare @pos int;
declare @innerpos int;

set @table = 'content';
set @textfield = 'aboutus';
set @findstr = '';
set @step = 1000;
set @pos = 1;
set @findpos = 0;
set @findcount = 0;

while(@pos = 1 or len(@str) = @step)
begin
set @sql = N'select @str = substring(cast('+@textfield+' as ntext), '+cast(@pos as nvarchar)+', '+cast(@step as nvarchar)+') from '+@table;
--select @sql;
exec sp_executesql @sql, N'@str nvarchar(4000) output', @str output;
--select @str;
set @innerpos = 1;
while(@innerpos = 1 or @findpos > 0)
begin
select @findpos = charindex(@findstr, @str, @innerpos);
if @findpos > 0
set @findcount = @findcount + 1;
set @innerpos = @findpos + len(@findstr);
end
set @pos = @pos + len(@str) - (len(@findstr) - 1);
end

select @findcount;

文档

[sqlserver]在text类型字段中查找字符串出现次数

[sqlserver]在text类型字段中查找字符串出现次数:-- [sqlserver]在text类型字段中计算某一字符串出现的次数 declare @ table nvarchar ( 40 ) ; -- 查询表名 declare @ textfield nvarchar ( 40 ) ; -- 查询列名(text类型) declare @ findstr nvarchar ( 400 ) ;
推荐度:
标签: 出现 查询 查找
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top