快捷导航

[其他教程] mysql 中如何取得汉字字段的各汉字首字母

[复制链接]
查看: 3389|回复: 16

3762

主题

9657

狗粮

6

精华

管理员

积分
27772

最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老

QQ
发表于 2015-9-20 17:13:30 | 显示全部楼层 |阅读模式
[color=white !important][backcolor=rgb(108, 226, 108) !important]
[color=white !important]?

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

DROP FUNCTION IF EXISTS `getPY`;
DELIMITER ;;
CREATE FUNCTION `getPY`(in_string VARCHAR(65534)) RETURNS mediumtext CHARSET utf8
BEGIN
DECLARE tmp_str VARCHAR(65534) 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(65534) charset gbk DEFAULT '';#结果字符串
DECLARE tmp_cc VARCHAR(2) charset gbk DEFAULT '';#拼音字符,存放单个汉字对应的拼音首字符
SET tmp_str = in_string;#初始化,将in_string赋给tmp_str
SET tmp_len = LENGTH(tmp_str);#初始化长度
WHILE tmp_len > 0 DO #如果被计算的tmp_str长度大于0则进入该while
SET 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;;
DELIMITER ;



温馨提示:
1、本站所有信息都来源于互联网有违法信息与本网站立场无关。
2、当有关部门,发现本论坛有违规,违法内容时,可联系站长删除,否则本站不承担任何责任。
3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
4、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
5、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
6、如果使用本帖附件,本站程序只提供学习使用,请24小时内删除!使用者搭建运营触犯法律,违法,违规,本站不承担任何责任。
我是一条可怜的土狗...

0

主题

69

狗粮

0

精华

注册会员

积分
95
发表于 2015-9-20 17:50:48 | 显示全部楼层
不错不错
我是一条可怜的土狗...

0

主题

57

狗粮

0

精华

注册会员

积分
75
发表于 2015-9-20 17:20:28 | 显示全部楼层
这个是好东西。
我是一条可怜的土狗...

0

主题

47

狗粮

0

精华

注册会员

积分
64
发表于 2015-9-20 18:03:01 | 显示全部楼层
支持,赞一个支持,赞一个
我是一条可怜的土狗...

0

主题

60

狗粮

0

精华

注册会员

积分
97
发表于 2015-9-20 17:31:44 | 显示全部楼层
看看怎么样,希望会不错的
我是一条可怜的土狗...

0

主题

69

狗粮

0

精华

注册会员

积分
95
发表于 2015-9-20 17:54:06 | 显示全部楼层
大人,此事必有蹊跷!
我是一条可怜的土狗...

0

主题

63

狗粮

0

精华

注册会员

积分
95
发表于 2015-9-20 17:43:34 | 显示全部楼层
顶顶多好
我是一条可怜的土狗...

0

主题

47

狗粮

0

精华

注册会员

积分
59
发表于 2015-9-20 18:10:17 | 显示全部楼层
这个源码真好!
我是一条可怜的土狗...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩推荐

体育赛事直播/斗球网页直播/篮球等体育游戏

2024-11-06 精品源码

仿火币模式交易所源码+VUE源码可二开 法币

2021-12-19 精品源码

【变色龙】app封装系统源码+某站在售上千的

2021-12-19 精品源码

BZZ分币系统/PHA分币系统/XCH/chia分币 奇

2021-12-19 精品源码

任务悬赏APP系统源码-活动营销三级分销返佣

2021-12-19 精品源码

最新升级版 云挖矿模式盗u源码 秒u源码-全

2022-01-04 精品源码

UI非常漂亮的数诚1对1直播+双端源码/带收徒

2021-12-19 精品源码

新版【士兵扫雷UI改版】12月未新增多页面新

2022-01-03 精品源码

让创业更简单

  • 反馈建议:xiaotuzi2018@foxmail.com
  • 客服电话:
  • 工作时间:周一到周六

云服务支持

精品资源,快速检索

关注我们

Copyright 小白源码网  Powered by©  技术支持: