创建存储过程,将中文字段转拼音首字母

CREATE DEFINER=`root`@`%` FUNCTION `fristPinyin`(P_NAME VARCHAR(255)) RETURNS varchar(255) CHARSET utf8

BEGIN

DECLARE V_RETURN VARCHAR(255);

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‘);

RETURN V_RETURN;

END;

中文转拼音

CREATE DEFINER=`root`@`%` FUNCTION `pinyin`(P_NAME VARCHAR(255)) RETURNS varchar(255) CHARSET utf8

BEGIN

DECLARE V_COMPARE VARCHAR(255);

DECLARE V_RETURN VARCHAR(255);

DECLARE I INT;

SET I = 1;

SET V_RETURN = ‘‘;

while I < LENGTH(P_NAME) do

SET V_COMPARE = SUBSTR(P_NAME, I, 1);

IF (V_COMPARE != ‘‘) THEN

#SET V_RETURN = CONCAT(V_RETURN, ‘,‘, V_COMPARE);

SET V_RETURN = CONCAT(V_RETURN, fristPinyin(V_COMPARE));

#SET V_RETURN = fristPinyin(V_COMPARE);

END IF;

SET I = I + 1;

end while;

IF (ISNULL(V_RETURN) or V_RETURN = ‘‘) THEN

SET V_RETURN = P_NAME;

END IF;

RETURN V_RETURN;

END;

调用

select upper(pinyin(user_name)) as un,user_name from ecs_users where user_id=63 and upper(pinyin(user_name)) like ‘%c%‘;

原文:http://www.cnblogs.com/zenghansen/p/4846460.html

mysql 拼音模糊查询_mysql中文字段转拼音首字母,以及中文拼音模糊查询相关推荐

  1. python获取字符串首字母_[Python] Python 获取中文的首字母 和 全部拼音首字母

    原博文 2019-07-08 04:18 − Python 获取中文的首字母 和 全部拼音首字母 代码如下: import pinyin def getStrAllAplha(str): return ...

  2. [Python] Python 获取中文的首字母 和 全部拼音首字母

    Python 获取中文的首字母 和 全部拼音首字母 代码如下: import pinyindef getStrAllAplha(str):return pinyin.get_initial(str, ...

  3. Android通讯录模糊匹配搜索实现(号码、首字母,移动应用开发课程设计心得

    Log.i("wwj", sb.toString()); } cursor.close(); return contacts; } 关于模糊匹配,我真的有点头大,我想到的是用正则表 ...

  4. Android通讯录模糊匹配搜索实现(号码、首字母、简拼、全拼)

    Android通讯录模糊匹配搜索实现(号码.首字母.简拼.全拼) 2013年12月10日 工作记录 小巫在工作中碰到一个需求,要求实现通讯录联系人的搜索,获取联系人的方式有好几种,我都有点混乱了,下面 ...

  5. vue提取字符串中中文汉字的大写首字母

    vue提取字符串中中文汉字的大写首字母 1.需求背景 最近开发vue项目,在关于药品的项目中有个需求是要提取药品中文名称的首字母组成拼音码,例如:六味地黄丸提取首字母后是LWDHW. 解决方案 这里需 ...

  6. mysql韩语排序_MySQL汉字字段按拼音排序

    我们的MySQL使用latin1的默认字符集,也就是说,对汉字字段直接使用GBK内码的编码进行存储,当需要对一些有汉字的字段进行拼音排序时(特别涉及到类似于名字这样的字段时),默认无法通过order ...

  7. mysql 拼音首字母_MySQL 获取某个字段的汉语拼音首字母 - 文章

    在做一个商城的时候,需要用户能有切换城市的功能,城市列表按照汉语拼音首字母排序,城市的数据是从国家统计局扒下来的,只有城市的编码和城市的名称,通过下面的 MySQL 函数,获取某个汉语的首字母. CR ...

  8. mysql windows 乱码问题_MySQL:windows中困扰着我们的中文乱码问题

    前言:什么是mysql中的中文乱码问题? 话不多说,直接上图 这个东西困扰了我好久,导致我现在对windows映像非常不好,所以就想改成Linux,行了,牢骚就发到这里,直接说问题,明眼人一眼就看出来 ...

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

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

  10. {转}C#使用微软语言包来获取中文汉字的拼音、拼音首字母、中文繁体

    首先需要获取ChnCharInfo.dll和ChineseConverter.dll ChnCharInfo.dll官方下载操作如下: 先下载微软Microsoft Visual Studio Int ...

最新文章

  1. 600余名外出务工者免费乘高铁“返乡专列”回云南过春节
  2. nginx+tomcat+memcache实现负载均衡、session共享
  3. java游戏下载ios_java浏览器下载
  4. close关闭指定窗口 matlab_Δ-Σ ADC设计笔记一:MATLAB环境设置
  5. vc++出现warningC4819的处理方法
  6. ubuntu boot空间不足_安装 Ubuntu 双系统
  7. 11 MM配置-主数据-定义物料类型的编码范围
  8. jdk下载--操作系统
  9. np中meshgrid生成二维矩阵matplotlib中imshow生成图形
  10. swing获取文本框内容_Swing 使用 JTable详解
  11. C++教程:C++开发的四重境界是什么?
  12. Linux之dirname与basename命令
  13. 判断一个数是否为质数(素数)的4种方法
  14. 《杀死一只知更鸟》一本心灵成长之书,教会孩zi善待世界
  15. Linux实现ppp拨号4G模块联网全球APN之中国(China)
  16. SQL 里ESCAPE的用法
  17. Java set 和 map 学习记录
  18. java mongodb 多表关联查询,多条件查询,分页,排序
  19. 《黑客帝国》用python实现中文代码雨
  20. phpmailer php7,php PHPMailer 报错?

热门文章

  1. 蓝桥杯.奇妙的数字(暴力)
  2. 使用jad反编译Java文件
  3. 制作纯DOS启动U盘
  4. 助老服务机器人结构设计
  5. 移动通信(Mobile Communication)
  6. mac快捷键大全超清示意图动态壁纸
  7. aes解密流程图_aes流程图(apqp五个阶段流程图)
  8. linux下的文件io编程实现文件的拷贝
  9. 免费后台挂尔雅浏览器下载及使用教程
  10. sql按照字符串格式拼接