DELIMITER $$CREATE DEFINER=`root`@`%` FUNCTION `chinese2ShortPinyin`(in_string VARCHAR(32) ) RETURNS varchar(32) CHARSET utf8
BEGINDECLARE tmp_str VARCHAR(255) charset gbk DEFAULT '' ; #截取字符串,每次做截取后的字符串存放在该变量中,初始为函数参数in_string值
DECLARE tmp_len SMALLINT DEFAULT 0;#tmp_str的长度
DECLARE tmp_char VARCHAR(2) charset gbk DEFAULT '';#截取字符,每次 left(tmp_str,1) 返回值存放在该变量中
DECLARE tmp_rs VARCHAR(255) charset gbk DEFAULT '';#结果字符串
DECLARE tmp_cc VARCHAR(2) charset gbk DEFAULT '';#拼音字符,存放单个汉字对应的拼音首字符
SET tmp_str = in_string;#初始化,将in_string赋给tmp_strSET tmp_len = LENGTH(tmp_str);#初始化长度
WHILE tmp_len > 0 DO #如果被计算的tmp_str长度大于0则进入该whileSET tmp_char = LEFT(tmp_str,1);#获取tmp_str最左端的首个字符,注意这里是获取首个字符,该字符可能是汉字,也可能不是。
SET tmp_cc = tmp_char;#左端首个字符赋值给拼音字符
IF LENGTH(tmp_char)>1 THEN#判断左端首个字符是多字节还是单字节字符,要是多字节则认为是汉字且作以下拼音获取,要是单字节则不处理。
SELECT ELT(INTERVAL(CONV(HEX(tmp_char),16,10),0xB0A1,0xB0C5,0xB2C1,0xB4EE,0xB6EA,0xB7A2,0xB8C1,0xB9FE,0xBBF7,0xBFA6,0xC0AC,0xC2E8,0xC4C3,0xC5B6,0xC5BE,0xC6DA,0xC8BB,0xC8F6,0xCBFA,0xCDDA ,0xCEF4,0xD1B9,0xD4D1),'A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','W','X','Y','Z') INTO tmp_cc; #获得汉字拼音首字符
END IF;SET tmp_rs = CONCAT(tmp_rs,tmp_cc);#将当前tmp_str左端首个字符拼音首字符与返回字符串拼接
SET tmp_str = SUBSTRING(tmp_str,2);#将tmp_str左端首字符去除
SET tmp_len = LENGTH(tmp_str);#计算当前字符串长度
END WHILE;RETURN tmp_rs;#返回结果字符串END

MYSQL 获取每个汉字的拼音首字母相关推荐

  1. 从gb2py.idx中获取一个汉字的拼音首字母

    function GetPinyinFromFile(aHanzi:string):AnsiChar; //从gb2py.idx中获取一个汉字的拼音首字母 var sfile:TMemoryStrea ...

  2. java 汉字 字母_JAVA获取中文汉字字符串拼音首字母,英文字符不变的工具类

    java在处理项目需求时,有时需要排序,尤其是中文名字按0-9,A-Z进行首字母排序,这时候就需要首先要得到中文字符串的首字母,然后按照字母顺序进行排序,不多说,直接上代码,看java如何获取中文字符 ...

  3. mysql取汉字首拼_MYSQL 获取每个汉字的拼音首字母

    DELIMITER $$ CREATE DEFINER=`root`@`%` FUNCTION `chinese2ShortPinyin`(in_string VARCHAR(32) ) RETURN ...

  4. python汉字拼音查询_python获取一组汉字的拼音首字母

    下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. #!/usr/bin/env python # -*- coding: utf-8 -*- ...

  5. mysql hzpy_MySQL 实现查询汉字的拼音首字母 的字拼音

    的字拼音 MySQL 实现查询汉字的拼音首字母 时间:2010-04-06 12:23:22 类别:技术 访问:1,314 views RSS 2.0 评论 其实最好的方法还是用 PHP 来取拼音首字 ...

  6. java怎样获取汉字的首字母_[JAVA]获得汉字的拼音首字母

    --sunfruit 提供了获得汉字的拼音首字母的方法 JDK版本    无版本限制 功能    实现了获得一个汉字的拼音首字母功能,为汉字排序提供了方便 欢迎大家提意见,交流 代码如下: /** * ...

  7. php mysql 拼音首字母,Mysql应用MySQL查询汉字的拼音首字母实例教程

    <Mysql应用MySQL查询汉字的拼音首字母实例教程>要点: 本文介绍了Mysql应用MySQL查询汉字的拼音首字母实例教程,希望对您有用.如果有疑问,可以联系我们. 导读:最好的方法还 ...

  8. C# 获取汉字的拼音首字母(转)

    原文:https://blog.csdn.net/younghaiqing/article/details/62417269 一种是把所有中文字符集合起来组成一个对照表:另一种是依照汉字在Unicod ...

  9. C# 获取汉字的拼音首字母和全拼(含源码)

    C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是依照汉字在Unicode编码表中的排序来确定拼音的首字母.碰到多音字时就以常用的为准(第一种方法中可以自行更改,方法为手 ...

最新文章

  1. mysql从myisam_将MySQL从MyISAM转换成InnoDB错误和解决办法
  2. vs2010 sp1 安装 Silverlight4_Tools 提示 错误 解决办法
  3. 阮一峰 《ECMAScript 6 入门》:let 和 const 命令
  4. linux 关闭句柄,主库出现大量的未关闭句柄,对应linux命令 : lsof -p 28314|grep CLOSE_WAIT...
  5. 基于Vue.js的表格分页组件
  6. ServiceStack 项目实例 010 ServiceStack.Northwind - 2
  7. C++是C语言演变过来的,为何不能代替C语言?
  8. javascript ajax 脚本跨域调用全解析
  9. 二年级上册计算题_小学二年级上册应用题500道
  10. Chapter 1 贝叶斯推断的思想
  11. 服务器维保价格标准_标准维护服务方案
  12. 更加精确的TCP Westwood拥塞控制算法
  13. 海盗号推荐 | 十分钟读懂币圈必读书籍:《区块链十年》
  14. for和of引导的不定式结构的区别
  15. c语言初学——运算符和表达式
  16. linux入门详细介绍
  17. 38外观数列(循环遍历)
  18. 社区投稿 | DBLE 自定义拆分算法
  19. 记录介入阿里百川的坑
  20. MySQL、SQLServer 修改列名

热门文章

  1. 《html5 从入门到精通》读书笔记(一)
  2. 1211笔记关于//modal//更改窗口的根控制器//数据存取//Plist属性列表//-“沙盒机制”//plis属性列表//偏好设置//归档普通对象//联系人数据存储//协议与回调函数...
  3. 鲜为人知的软件项目管理原则(转)
  4. 64位系统使用Access 数据库文件的彻底解决方法
  5. esxi服务器3d性能,ESXi主机性能问题(示例代码)
  6. proxifier代理失败原因_上海财务代理
  7. linux卸载db2cli,DB2 for linux 安装
  8. 列车停站方案_4月10日零时起阜阳高铁、铁路大调图!最新列车时刻表来了!看看有没有你经常乘坐的列车?...
  9. 计算机基础说课 word,计算机基础说课稿
  10. unlegal android,cordova-plugin-baidumaplocation百度地图定位Cordova插件