最新文章专题视频专题问答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
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

MySQL-procedure小试牛刀_MySQL

来源:懂视网 责编:小采 时间:2020-11-09 20:06:59
文档

MySQL-procedure小试牛刀_MySQL

MySQL-procedure小试牛刀_MySQL:根据spam_keyword表中的kid对word列逐行逐字分割到t表中,并且统计每个字的数量。 用了两层循环,外循环游标读行,内循环stroo++读字。 drop procedure if exists proc134f; CREATE PROCEDURE proc134f() BEGIN de
推荐度:
导读MySQL-procedure小试牛刀_MySQL:根据spam_keyword表中的kid对word列逐行逐字分割到t表中,并且统计每个字的数量。 用了两层循环,外循环游标读行,内循环stroo++读字。 drop procedure if exists proc134f; CREATE PROCEDURE proc134f() BEGIN de

根据spam_keyword表中的kid对word列逐行逐字分割到t表中,并且统计每个字的数量。

用了两层循环,外循环游标读行,内循环stroo++读字。

drop procedure if exists proc134f;
CREATE PROCEDURE proc134f()
BEGIN
declare kidoo int;
declare tid int;
declare stroo int;
declare str varchar(255);
declare strlength int;
declare istr varchar(3);
declare istr_cnt int;
declare done int;-- 游标用
declare cur_kid CURSOR for select kid from spam_keyword;-- 游标用
declare continue handler for not found set done=1;-- 游标用,据说是直达引擎的通道
set tid=0;
delete from t;
open cur_kid;-- 开启游标
loop1:loop-- 开启1层外循环
fetch cur_kid into kidoo; -- 从定义的范围中读取下一行并赋予
if done=1 then leave loop1;end if;-- 判断是否 found 下一行,否则跳出
select word into str from spam_keyword where kid=kidoo;
set str=replace(str,' ','');
set strlength=char_length(str);
set stroo=0;
loop2:loop-- 2层内循环
set stroo=stroo+1;
set istr=substr(str,stroo,1);
select count(*) into istr_cnt from t where t=istr;-- 计数
if istr_cnt<>0 then update t set cnt=cnt+1 where t=istr;else
set tid=tid+1;
insert into t set id=tid,t=istr,cnt=1;end if;
if stroo>=strlength then leave loop2;end if;end loop loop2;

set done=0;
end loop loop1;
close cur_kid;-- 关闭游标
select * from t order by cnt desc;
END;

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

MySQL-procedure小试牛刀_MySQL

MySQL-procedure小试牛刀_MySQL:根据spam_keyword表中的kid对word列逐行逐字分割到t表中,并且统计每个字的数量。 用了两层循环,外循环游标读行,内循环stroo++读字。 drop procedure if exists proc134f; CREATE PROCEDURE proc134f() BEGIN de
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top