找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 815|回复: 4

mysql二元分词法函数

[复制链接]
发表于 2008-1-25 19:29:32 | 显示全部楼层 |阅读模式 IP:江苏南通
mysql二元分词法函数
DELIMITER $$;
DROP FUNCTION IF EXISTS `radius`.`fun_split`$$
CREATE [email=DEFINER=`root`@`%]DEFINER=`root`@`%[/email]` FUNCTION `fun_split`(nm varchar(100)) RETURNS varchar(500) CHARSET latin1
    READS SQL DATA
BEGIN
      declare i int;
      declare rtn int;
      declare rtn1 int;
      declare sec varchar(10);
      declare rtnstr varchar(500);
          set i=1;
      set rtnstr='';
          WHILE i <length(nm) DO
      set rtn= ascii(substring(nm,i,1));
      IF rtn>127 THEN
         set rtn1= ascii(right(substring(nm,i,2),1));
         IF rtn1> 127 THEN
            IF i<length(nm)-1 THEN
情缘XIUGOO站长之家 网赚联盟 数据库类
          IF (ascii(right(substring(nm,i,3),1))>127 and ascii(right(substring(nm,i,4),1))>127) THEN
             set sec=concat(right(concat('00',rtn-160),2),right(concat('00',rtn1-160),2),right(concat('00',ascii(right(substring(nm,i,3),1))-160),2),right(concat('00',ascii(right(substring(nm,i,4),1))-160),2),' ');
          ELSE
             set sec='';
          END IF;
            ELSE
          set sec='';
            END IF ;
         ELSE
            set sec=concat(char(rtn),char(rtn1));
         END IF;
         SET i = i + 1;
      ELSE
         IF i<length(nm)-1 THEN
          IF (ascii(right(substring(nm,i,2),1))>127 and ascii(right(substring(nm,i,3),1))>127) THEN
              set sec=concat(char(rtn),' ');
          ELSE
              set sec=char(rtn);
          END IF;
         ELSE
          IF (ascii(right(substring(nm,i,2),1))>127 and ascii(right(substring(nm,i,3),1))>127) THEN
              set sec=char(rtn);
          ELSE
              set sec=char(rtn,ascii(right(substring(nm,i,2),1)));
          END IF;
         END IF;
         
      END IF;
      set rtnstr=concat(rtnstr,sec);
      SET i = i + 1;
      
      END WHILE;
       RETURN rtnstr;
      END$$
发表于 2009-11-6 06:05:31 | 显示全部楼层 IP:台湾
沙发...................
回复

使用道具 举报

发表于 2010-2-12 13:05:10 | 显示全部楼层 IP:日本
哈哈,有意思~顶顶 ,继续顶顶。继续顶哦
回复

使用道具 举报

发表于 2010-3-6 17:05:10 | 显示全部楼层 IP:香港
我仿佛看到了你鹰视狼顾,龙行虎步的伟岸英姿
回复

使用道具 举报

发表于 2010-3-11 16:05:06 | 显示全部楼层 IP:澳大利亚
够震撼!够创新!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-29 13:24 , Processed in 0.112818 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表