文档章节

利用MySQL数据库来处理中英文取首字母排序

 小田天
发布于 2015/12/14 10:36
字数 219
阅读 37
收藏 0
DELIMITER $$
CREATE FUNCTION `fristPinyin`(P_NAME VARCHAR (255)) RETURNS varchar (255) CHARSET utf8 
DETERMINISTIC
BEGIN 
     DECLARE V_RETURN VARCHAR (255);
     DECLARE V_BOOL INT DEFAULT 0;
           DECLARE FIRST_VARCHAR VARCHAR (1);
 
     SET FIRST_VARCHAR = left ( CONVERT (P_NAME USING gbk),1);
     SELECT FIRST_VARCHAR REGEXP '[a-zA-Z]' INTO V_BOOL;
     IF V_BOOL = 1 THEN
       SET V_RETURN = FIRST_VARCHAR;
     ELSE
       SET V_RETURN = ELT(INTERVAL(CONV(HEX( left ( CONVERT (P_NAME USING gbk),1)),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' ); 
     END IF;
     RETURN V_RETURN;
END $$
DELIMITER;


本文转载自:http://my.oschina.net/vernon/blog/351655

粉丝 1
博文 84
码字总数 49841
作品 0
怀化
私信 提问
利用MySQL数据库来处理中英文取首字母排序

很久都没有写博客了, 但是也积攒了了很多的问题, 下次找个时间一起整理一下, 然后记录下来, 以备不时之需. 我们的联系人列表经常会有按照首字母排序的需求. 这个很方便, 很清晰, 如果不说性能...

陈袁at互联
2014/12/03
0
2
【gridview增删改查】数据库查询后lodop打印

ASP.NET中使用gridview可以很容易的把需要的数据动态显示在前台,还可以在表格里加入列进行增删改查,每次点击的时候重新加载数据,gridview也提供了分页等功能,还有一些模版让显示在前台的...

花谢悦神
2018/10/24
0
0
Python基础之常见内建函数

map() 函数接受两个参数,一个是函数,一个是可迭代对象(Iterable),将传入的函数依次作用到可迭代对象的每一个元素,并把结果作为迭代器(Iterator)返回。 举例说明,有一个函数,要把这个函...

会跳舞的蜗牛
2017/09/05
0
0
【北京】python开发求职

技能 1. 熟悉python语言,擅长网络编程,熟悉python自带类库以及第三方库,多线程,多进程的使用,掌握python各种数据结构的用法 2. 熟悉MySQL、SQLite等数据库的使用及优化、数据分区以及存...

zhangdedezhu
2014/03/08
784
7
MYSQL数据库及字段命名规范

数据库命名规范 由小写字母及下划线组成,一般采用业务名称简写。如 web19floornet web_car 备份数据库名称为正式库+当前时间. web19floornet_20070403 webcar20070403 2. 数据库表命名规范 ...

HashTable
2016/07/01
46
0

没有更多内容

加载失败,请刷新页面

加载更多

首次披露!阿里线下智能方案进化史

阿里妹导读:AI 技术已经从互联网走向零售、汽车、银行等传统行业。受限于延时、成本、安全等多方面的限制,单一的云解决方案往往不能满足场景需求。线下智能方案逐步成为了智能化过程中重要...

阿里云云栖社区
15分钟前
0
0
凭什么看不起外包员工?外包还值得进吗?

前言 > 最近有好多人讨论外包,前几天看到一个帖子说就是有一个外包吃了公司的的零食,遭到HR当场批评, 搞的整个IT界备受关注,那么外包公司和非外包公司有什么样的不一样呢?我今天也说说我...

终端研发部
37分钟前
2
0
WinSCP得到root权限 ubuntn

WinSCP如果进行sudo? 首先 要在 /etc/sudoer 最后一行加上 你的用户名 ALL=NOPASSWD:ALL 然后到 winscp里的编译一下站点属性 SFTP -> SFTP 服务器 输入 sudo /usr/lib/openssh/sftp-server ...

shzwork
40分钟前
2
0
Centos 7 安装 Docker

参考 https://yq.aliyun.com/articles/110806 1. 卸载旧版的 docker $ sudo yum remove docker \ docker-client \ docker-client-latest \ ......

北漂的我
今天
2
0
GitLab 发布新版本,增强的操作仪表板

昨天,GitLab的团队发布了GitLab 11.10,一个基于Web的DevOps生命周期工具。这个版本提供了新的特性,包括操作仪表板上的管道、合并结果的管道等等。 GitLab 11.10有什么新内容? 增强操作指示...

linuxCool
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部