MSYQL 取拼音首字母
来源:互联网 发布:spss预测后显示数据 编辑:程序博客网 时间:2024/05/01 05:43
DROP FUNCTION IF EXISTS F_GETPY;
CREATE FUNCTION `F_GETPY`(in_string VARCHAR(100)) RETURNS varchar(100) CHARSET utf8
BEGIN
DECLARE tmp_str VARCHAR(100) CHARSET gbk DEFAULT '' ;
DECLARE tmp_char VARCHAR(100) CHARSET gbk DEFAULT '' ;
DECLARE V_LEN INT;
DECLARE V_I INT;
DECLARE V_PY VARCHAR(100);
SET V_LEN=CHAR_LENGTH(in_string);
SET V_I=1;
SET V_PY='';
DROP TEMPORARY TABLE IF EXISTS TT_PYZD;
CREATE TEMPORARY TABLE TT_PYZD (chr char(2) ,letter char(2)) DEFAULT CHARSET gbk;
INSERT INTO TT_PYZD
SELECT '吖 ', 'A ' UNION ALL SELECT '八 ', 'B ' UNION ALL
SELECT '嚓 ', 'C ' UNION ALL SELECT '咑 ', 'D ' UNION ALL
SELECT '妸 ', 'E ' UNION ALL SELECT '发 ', 'F ' UNION ALL
SELECT '旮 ', 'G ' UNION ALL SELECT '铪 ', 'H ' UNION ALL
SELECT '丌 ', 'J ' UNION ALL SELECT '咔 ', 'K ' UNION ALL
SELECT '垃 ', 'L ' UNION ALL SELECT '嘸 ', 'M ' UNION ALL
SELECT '拏 ', 'N ' UNION ALL SELECT '噢 ', 'O ' UNION ALL
SELECT '妑 ', 'P ' UNION ALL SELECT '七 ', 'Q ' UNION ALL
SELECT '呥 ', 'R ' UNION ALL SELECT '仨 ', 'S ' UNION ALL
SELECT '他 ', 'T ' UNION ALL SELECT '屲 ', 'W ' UNION ALL
SELECT '夕 ', 'X ' UNION ALL SELECT '丫 ', 'Y ' UNION ALL
SELECT '帀 ', 'Z ' ;
WHILE V_I<=V_LEN DO
SET tmp_str = substring(in_string,V_I,1);
IF ASCII(tmp_str)<127
THEN
SET tmp_char=UPPER(tmp_str);
ELSE
SELECT letter INTO tmp_char FROM TT_PYZD WHERE chr<=tmp_str ORDER BY chr DESC LIMIT 1;
END IF ;
SET V_I=V_I+1;
SET V_PY=CONCAT(V_PY,tmp_char);
END WHILE;
DROP TEMPORARY TABLE IF EXISTS TT_PYZD;
RETURN V_PY;
END;
CREATE FUNCTION `F_GETPY`(in_string VARCHAR(100)) RETURNS varchar(100) CHARSET utf8
BEGIN
DECLARE tmp_str VARCHAR(100) CHARSET gbk DEFAULT '' ;
DECLARE tmp_char VARCHAR(100) CHARSET gbk DEFAULT '' ;
DECLARE V_LEN INT;
DECLARE V_I INT;
DECLARE V_PY VARCHAR(100);
SET V_LEN=CHAR_LENGTH(in_string);
SET V_I=1;
SET V_PY='';
DROP TEMPORARY TABLE IF EXISTS TT_PYZD;
CREATE TEMPORARY TABLE TT_PYZD (chr char(2) ,letter char(2)) DEFAULT CHARSET gbk;
INSERT INTO TT_PYZD
SELECT '吖 ', 'A ' UNION ALL SELECT '八 ', 'B ' UNION ALL
SELECT '嚓 ', 'C ' UNION ALL SELECT '咑 ', 'D ' UNION ALL
SELECT '妸 ', 'E ' UNION ALL SELECT '发 ', 'F ' UNION ALL
SELECT '旮 ', 'G ' UNION ALL SELECT '铪 ', 'H ' UNION ALL
SELECT '丌 ', 'J ' UNION ALL SELECT '咔 ', 'K ' UNION ALL
SELECT '垃 ', 'L ' UNION ALL SELECT '嘸 ', 'M ' UNION ALL
SELECT '拏 ', 'N ' UNION ALL SELECT '噢 ', 'O ' UNION ALL
SELECT '妑 ', 'P ' UNION ALL SELECT '七 ', 'Q ' UNION ALL
SELECT '呥 ', 'R ' UNION ALL SELECT '仨 ', 'S ' UNION ALL
SELECT '他 ', 'T ' UNION ALL SELECT '屲 ', 'W ' UNION ALL
SELECT '夕 ', 'X ' UNION ALL SELECT '丫 ', 'Y ' UNION ALL
SELECT '帀 ', 'Z ' ;
WHILE V_I<=V_LEN DO
SET tmp_str = substring(in_string,V_I,1);
IF ASCII(tmp_str)<127
THEN
SET tmp_char=UPPER(tmp_str);
ELSE
SELECT letter INTO tmp_char FROM TT_PYZD WHERE chr<=tmp_str ORDER BY chr DESC LIMIT 1;
END IF ;
SET V_I=V_I+1;
SET V_PY=CONCAT(V_PY,tmp_char);
END WHILE;
DROP TEMPORARY TABLE IF EXISTS TT_PYZD;
RETURN V_PY;
END;
阅读全文
0 0
- MSYQL 取拼音首字母
- java取拼音首字母
- 取汉字拼音首字母
- 取汉字的拼音首字母
- 根据汉字取拼音首字母
- 取汉字拼音首字母函数
- 取汉字拼音大写首字母
- 取中文的拼音首字母
- JAVA 取汉字拼音首字母
- 取汉字拼音首字母的函数
- 取汉字拼音首字母的存储过程
- 取汉字拼音首字母的函数
- 取汉字拼音首字母的函数
- 取汉字拼音首字母的存储过程
- 取汉字拼音首字母的存储过程
- 取汉字拼音首字母的存储过程
- 应用自定义类,取汉字拼音首字母
- 取汉字拼音首字母的存储过程
- 第十四周项目一(2)——验证算法之直接插入排序
- Kotlin学习--控制语法之when
- 基于SSH框架全注解简单实例
- Python 利用numpy高性能计算
- 选择法排序
- MSYQL 取拼音首字母
- 牛客 拜访
- 线性代数总结
- SpringMvc最全的约束——你的感冒清个人总结
- iOS 图标上下浮动的动画效果
- 第十四周项目三
- Linux下编写php扩展
- python 单元测试
- C++优先队列使用