2019独角兽企业重金招聘Python工程师标准>>>

今天碰到了取拼音首字母的需求。整理了一下。
1、编码表:

/*DDL Information For - test.cs_char2letter*/
------------------------------------------------------

Table           Create Table                                
--------------  ---------------------------------------------
cs_char2letter  CREATE TABLE `cs_char2letter` (             
                  `PY` char(1) character set utf8 NOT NULL, 
                  `HZ` char(1) NOT NULL default '',         
                  PRIMARY KEY  (`PY`)                       
                ) ENGINE=InnoDB DEFAULT CHARSET=gbk

2、记录信息:

query result(23 records)

PY HZ
A
B 簿
C
D
E
F
G
H
J
K
L
M
N
O
P
Q
R
S
T
W
X
Y
Z

3、取拼音首字母的函数:
DELIMITER $$

DROP FUNCTION IF EXISTS `test`.`func_get_first_letter`$$

CREATE DEFINER=`root`@`localhost` FUNCTION `func_get_first_letter`(
 words   varchar(255)) RETURNS  char(1) CHARSET utf8
BEGIN  
  declare fpy char(1);  
  declare pc char(1);  
  declare cc char(4);  
  set @fpy = UPPER(left(words,1));  
  set @pc = (CONVERT(@fpy   USING   gbk));  
  set @cc = hex(@pc);  
  if @cc >= "8140" and @cc <="FEA0" then 
    begin  
      select PY from cs_char2letter where hz>= @pc limit 1 into @fpy;
    end;  
  end   if;  
  Return   @fpy;  
  END$$

DELIMITER ;

4、测试结果:

select func_get_first_letter('我是月亮'),func_get_first_letter('月亮是我'),func_get_first_letter('他爸也是我');

query result(1 records)

func_get_first_letter('我是月亮') func_get_first_letter('月亮是我') func_get_first_letter('他爸也是我')
W Y T

5、附上表插表语句:
truncate table cs_char2letter;
set names utf8;
insert into cs_char2letter values
('A','骜'),
('B','簿'),
('C','错'),
('D','�'),
('E','�'),
('F','鳆'),
('G','�'),
('H','�'),
('J','�'),
('K','�'),
('L','�'),
('M','�'),
('N','�'),
('O','沤'),
('P','曝'),
('Q','�'),
('R','�'),
('S','�'),
('T','箨'),
('W','鹜'),
('X','�'),
('Y','韵'),
('Z','�');

本文出自 “上帝,咱们不见不散!” 博客,转载请与作者联系!

转载于:https://my.oschina.net/u/585111/blog/219492

MYSQL 中取拼音首字母的函数相关推荐

  1. mysql查询汉字拼音首字母_MySQL查询汉字的拼音首字母实例教程

    最好的方法还是用 PHP 来取拼音首字母,在 MySQL 里新建一个字段来存放 php 里查询汉字的拼音首字母已经有很多参考的代码了. 现在给出在mysql 里实现的, 测试环境是mysql-5.0. ...

  2. mysql查询汉字拼音首字母的方法_MySQL查询汉字拼音首字母的方法

    下面为您介绍了MySQL查询汉字拼音首字母的方法,该方法极具实用价值,如果您之前遇到过类似方面的问题,不妨一看. MySQL查询汉字拼音首字母方法如下: 1.建立拼音首字母资料表 Sql代码: DRO ...

  3. php 获取首字母,PHP_php 获得汉字拼音首字母的函数,php获取汉字拼音的第一个字母 - phpStudy...

    php 获得汉字拼音首字母的函数 php获取汉字拼音的第一个字母 复制代码 代码如下: function getinitial($str) { $asc=ord(substr($str,0,1)); ...

  4. mysql获取汉字拼音首字母_MySQL数据库获取汉字拼音的首字母函数

    需求简介:最 近的一个项目,想实现如下图所示的显示效果.很明显,如果能够获取对应的汉字词组的拼音首字母就可以实现了,如果是固定的几个汉字,人为的拼一下就可以 了,不过项目中有多处功能是需要这个效果的, ...

  5. php取汉字拼音首字母,php获取汉字拼音首字母的函数(真正可以使用的)

    //php获取中文字符拼音首字母 function getFirstCharter($str){ if(empty($str)){return '';} $fchar=ord($str{0}); if ...

  6. PostgreSQL 获取拼音首字母的函数 - 摘自互联网

    获取中文拼音首字母的,用到了编码顺序来简化,还有优化空间. CREATE FUNCTION func_chinese_spell(str VARCHAR(2000)) RETURNS VARCHAR( ...

  7. mysql汉字转拼音首字母报错_MySql 汉字转拼音首字母

    DELIMITER $$ USE `test`$$ DROP FUNCTION IF EXISTS `getPY`$$ CREATE DEFINER=`hjd`@`%` FUNCTION `getPY ...

  8. VBA获取汉字拼音首字母的函数

    汉字转拼单首字母 现在各种查询中,一般都支持拼音首字母查询,下面的函数可以获得汉字的首字母. Public Function PY(myStr) Dim Str$, L$, Temp$, 特殊字$ S ...

  9. java取拼音首字母

    java 取汉字拼音首字母 作者:huivip public class testzm {   public testzm() {   } public static void main(String ...

  10. php 获得汉字拼音首字母的函数,php 获得汉字拼音首字母的函数

    php获取汉字拼音的第一个字母 function getinitial($str) { $asc=ord(substr($str,0,1)); if ($asc<160) //非中文 { if ...

最新文章

  1. idea编译项目 失败_在IntelliJ IDEA下使用Lombok时无法编译项目
  2. 机器学习笔记:triplet loss
  3. 蚂蚁面试:字符串在JVM中如何存放?
  4. 细数网络上十七种安全威胁
  5. Spring加载资源文件的方式
  6. 二进制文本编辑器_Textadept for mac(文本编辑) v10.5免费版
  7. 如意淘商品推荐技术介绍之二:高级技术
  8. 设计模式实践-装饰器
  9. 记一次很坑很坑的报错java.lang.Exception: The class is not public.
  10. matplotlib绘制雷达图之基本配置——万能模板案例
  11. 集火全屋智能“后装市场”,真正玩得转的没几个
  12. IFRS9 或中国版IFRS9 会计准则22号的内容和实施概述
  13. 何登成对Innodb加锁的分析
  14. ERP销售管理系统是什么?销售管理软件有哪些核心功能?
  15. 京东-Java中级面试题分享-
  16. 关于360断网急救箱引发的探索
  17. objdump 二进制文件分析
  18. php使用redis的批量发送短信
  19. matlab fft 频率轴,如何从fft函数求频率轴?
  20. 堆排序对任一分支结点筛选时间复杂度

热门文章

  1. DBA:这有一份对接NBU备份故障排除指南,请查收!
  2. C语言——知识点汇总
  3. 电脑中了MEMZ病毒怎么办
  4. python win32api.sendmessage_Python win32api sendmasg
  5. mschart控件 用法
  6. 中国游戏的未来在哪里 - 游戏行业20年历史观察及趋势分析
  7. Jfree 数据可视化
  8. 请修改服务器脱机策略,异速联/天高客户端用户已离线但服务器端用户会仍话驻留处理方法...
  9. c++万能头文件包含的头文件
  10. HFSS天线设计实例_BLE天线优化分析