本人提供的方法有如下特点:

1.代码精简,使用简单,只要会基本的SQL语句就行
2.不用建立mysql 函数等复杂的东西
3.汉字库最全,可查询20902个汉字

方法如下:

1、建立拼音首字母资料表
Sql代码:(最好再加上主键和索引)

  1. DROP TABLE IF EXISTS `pinyin`;
  2. CREATE TABLE `pinyin` (
  3. `PY` varchar(1),
  4. `HZ1` varchar(1),
  5. `HZ2` varchar(1)
  6. ) ;
  7. INSERT   INTO   `pinyin`   (`PY`,`HZ1`,`HZ2`)   VALUES
  8. ('A','吖','驁'),
  9. ('B','八','簿'),
  10. ('C','嚓','錯'),
  11. ('D','咑','鵽'),
  12. ('E','妸','樲'),
  13. ('F','发','鰒'),
  14. ('G','猤','腂'),
  15. ('H','妎','夻'),
  16. ('J','丌','攈'),
  17. ('K','咔','穒'),
  18. ('L','垃','鱳'),
  19. ('M','嘸','旀'),
  20. ('N','丆','桛'),
  21. ('O','噢','漚'),
  22. ('P','妑','曝'),
  23. ('Q','七','囕'),
  24. ('R','呥','鶸'),
  25. ('S','仨','蜶'),
  26. ('T','他','籜'),
  27. ('W','屲','鶩'),
  28. ('X','夕','鑂'),
  29. ('Y','丫','韻'),
  30. ('Z','帀','咗');

执行后检查添加的表中的数据记录是否有“?”问号,如果有则表示数据库编码有问题。
2、查询数据库表中汉字首字拼音字母
SELECT `pinyin`.py, `相应表` . *
FROM `相应表` , `pinyin`
WHERE `汉字标题` >= `hz1`
AND `汉字标题` <= `hz2` ;
也可以直接查询汉字的首字拼音字母
SELECT `pinyin`.py
FROM `pinyin`
WHERE '汉字' >= `hz1`
AND '汉字' <= `hz2` ;
查询结果是"H "

****注意****
此方法只适用于gbk的编码,其他的编码需要先转换成gbk的,可以用convert(words using gbk)

还可以用函数处理
CREATE   FUNCTION   firstPY(words   varchar(255))   RETURNS   mediumtext  
  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   into   @fpy   from   pinyin   where   hz2>=@pc   and hz1<=@pc;  
                      end;  
            end   if;  
            Return   @fpy;  
  END

mysql数据库中查询汉字的拼音首字母的更多相关文章

  1. (转载)delphi中获取汉字的拼音首字母

    delphi中获取汉字的拼音首字母1.py: array[216..247] of string = ({216}'CJWGNSPGCGNESYPB' + 'TYYZDXYKYGTDJNMJ' + ' ...

  2. php查询汉字的拼音首字母的函数

    function getfirst($str, $charset='utf8'){         $dict=array(         'a'=>0xB0C4,         'b'=& ...

  3. 汉字转拼音首字母的java实现

    工作中经常会遇到的一些排序问题,比如 按汉字的拼音首字母排序,比如人名排序等,就要用到下面的方法了,思路: 1. 获得汉字 2. 将汉字转换成首字母,并记录下(必要时保存到数据库) 3. 按首字母进行 ...

  4. 简单测试--C#实现中文汉字转拼音首字母

    第一种: 这个是自己写的比较简单的实现方法,要做汉字转拼音首字母,首先应该有一个存储首字母的数组,然后将要转拼音码的汉字与每个首字母开头的第一个汉字即“最小”的汉字作比较,这里的最小指的是按拼音规则比 ...

  5. C#获取包括一二级汉字的拼音 首字母

    C#获取包括一二级汉字的拼音 首字母 声母 汉字拼音转换 using System; using System.Collections.Generic; using System.Linq; usin ...

  6. js汉字转拼音首字母

    js汉字转拼音首字母 2018-04-09 阅读 1018 收藏 1 原链:segmentfault.com 分享到:   前端必备图书<JavaScript设计模式与开发实践> > ...

  7. C# 获取汉字的拼音首字母和全拼(含源码)

    C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是依照汉字在Unicode编码表中的排序来确定拼音的首字母.碰到多音字时就以常用的为准(第一种方法中可以自行更改,方法为手 ...

  8. 获取汉字的拼音首字母--pinyin

    var pinyin = (function (){ var Pinyin = function (ops){ this.initialize(ops); }, options = { checkPo ...

  9. SqlServer 汉字转换拼音首字母函数

    CREATE function [dbo].[Func_GetPY](@str nvarchar(4000))returns nvarchar(4000)asbegin set @str=RTRIM( ...

随机推荐

  1. lintcode:Wiggle Sort II

    Wiggle Sort II Given an unsorted array nums, reorder it such that nums[0] < nums[1] > nums[2] ...

  2. AngularJS学习笔记1——什么是AngularJS?

    Angular JS是一个由Google维护的开源的Javascript框架,主要作者为: Misko Hevery(angular JS之父, Sr. Computer Scientist at G ...

  3. netbeans使用

    下载地址 https://netbeans.org/downloads/ https://netbeans.org/downloads/start.html?platform=linux&la ...

  4. outlook圆角table

    <table cellpadding="0" cellspacing="0" border="0" width="800&q ...

  5. Android TextView 文字居中

    有2种方法可以设置TextView文字居中: 一:在xml文件设置:android:gravity="center" 二:在程序中设置:m_TxtTitle.setGravity( ...

  6. java socket实现全双工通信

    java socket实现全双工通信 单工.半双工和全双工的定义 如果在通信过程的任意时刻,信息只能由一方A传到另一方B,则称为单工. 如果在任意时刻,信息既可由A传到B,又能由B传A,但只能由一个方 ...

  7. Recover Binary Search Tree-恢复二叉查找树

    题目描述: 由于某种原因一个二叉排序树的两个节点的元素被交换,在不改变树的结构的情况下恢复这颗二叉排序树 题目来源: http://oj.leetcode.com/problems/recover-b ...

  8. Scala模式匹配和类型系统

    1.模式匹配比java中的switch case强大很多,除了值,类型,集合等进行匹配,最常见的Case class进行匹配,Master.scala有大量的模式匹配. Case "_&qu ...

  9. laravel Event执行顺序

    laravel一大特色就是event事件系统.一般首先要listen一个事件,随后fire那个事件,这时执行路径将会调用event handler,返回后继续执行.例如: Event::listen( ...

  10. Qt之等待提示框(QPropertyAnimation)

    简述 之前分享过QLabel可以通过QMovie播放gif图片,可以实现等待提示框,今天主要使用动画QPropertyAnimation来进行实现! 数据加载的时候,往往都需要后台线程进行数据请求,而 ...