MariaDB社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4097|回复: 4
打印 上一主题 下一主题

汉字转拼音首字母的 Function

[复制链接]
跳转到指定楼层
1#
发表于 2009-3-29 23:04:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 xiaofenl 于 2011-2-7 22:59 编辑

DELIMITER $$
DROP FUNCTION IF EXISTS `py`$$
CREATE    FUNCTION `py`(a NVARCHAR(80)) RETURNS VARCHAR(80) CHARSET utf8
BEGIN
    DECLARE i INT DEFAULT 1 ;
    DECLARE strlen INT DEFAULT LENGTH(a);
    DECLARE str1 NVARCHAR(2) DEFAULT '';
    DECLARE outstr NVARCHAR(80) DEFAULT '';
    WHILE i<=strlen DO
       SELECT py_code INTO str1 FROM basic_pinyin WHERE `CHINESE`=(SUBSTRING(a,i,1));
       SET outstr=CONCAT(outstr,str1);
       SET str1='';
       SET i=i+1;
    END WHILE;
    SET outstr= UCASE(outstr);
    RETURN outstr;
END$$
DELIMITER ;

效率不是很高,哪位大侠可以指点下,怎么改进比较好?

=====================================================================
老贴,今天没事做,把数据表补上。好像共有2万多中文字。。。。。改了下索引,效率高很多了。。。哦还有,怎限制只能传5K啊。。。也太那个啥了吧。。

pycode.part19.rar

3.33 KB, 下载次数: 1374

pycode.part01.rar

4.88 KB, 下载次数: 1524

pycode.part02.rar

4.88 KB, 下载次数: 1355

pycode.part03.rar

4.88 KB, 下载次数: 1437

pycode.part04.rar

4.88 KB, 下载次数: 1255

pycode.part05.rar

4.88 KB, 下载次数: 1319

pycode.part06.rar

4.88 KB, 下载次数: 1309

pycode.part07.rar

4.88 KB, 下载次数: 1281

pycode.part08.rar

4.88 KB, 下载次数: 1345

pycode.part09.rar

4.88 KB, 下载次数: 1219

pycode.part10.rar

4.88 KB, 下载次数: 1314

pycode.part11.rar

4.88 KB, 下载次数: 1242

pycode.part12.rar

4.88 KB, 下载次数: 1293

pycode.part13.rar

4.88 KB, 下载次数: 1291

pycode.part14.rar

4.88 KB, 下载次数: 1233

pycode.part15.rar

4.88 KB, 下载次数: 1125

pycode.part16.rar

4.88 KB, 下载次数: 1312

pycode.part17.rar

4.88 KB, 下载次数: 1253

pycode.part18.rar

4.88 KB, 下载次数: 1217

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
2#
发表于 2009-3-30 14:00:29 | 只看该作者
不错,赞!

java中也有这样的函数
3#
 楼主| 发表于 2009-3-31 00:28:19 | 只看该作者
本帖最后由 xiaofenl 于 2009-3-31 00:29 编辑
不错,赞!

java中也有这样的函数
kider 发表于 2009-3-30 14:00



Java的是内部函数吗
4#
发表于 2009-3-31 10:36:47 | 只看该作者
忘了,你找找吧,而且效率很高...
5#
 楼主| 发表于 2009-3-31 20:49:52 | 只看该作者
3Q!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|MariaDB社区 ( 京ICP备07012489号    |
业务联系: QQ:48474881; 邮箱: 48474881@qq.com; 电话:13911732319
声明:本站部分文章是网友转载,若未经作者同意或署名有误,请联系网站管理员。

GMT+8, 2024-9-20 00:59 , Processed in 0.097734 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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