• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            在mysql 里實(shí)現(xiàn)查詢漢字的拼音首字母(摘)

            在mysql 里實(shí)現(xiàn)查詢漢字的拼音首字母
            作者: seakingx  發(fā)布日期: 2007-3-10    查看數(shù): 1149   出自: http://www.phpx.com
            php 里查詢漢字的拼音首字母已經(jīng)有很多參考的代碼了。
            現(xiàn)在給出在mysql 里實(shí)現(xiàn)的, 測試環(huán)境是mysql-5.0.27-win32

            1、建立拼音首字母資料表
            CODE:
            DROP TABLE IF EXISTS `pyk`;
            CREATE TABLE `pyk` (
            `PY` varchar(1) ,
            `HZ1` int ,
            `HZ2` int
            ) ;

            INSERT INTO `pyk` (`PY`,`HZ1`,`HZ2`) VALUES
            ('A',-20319,-20284),
            ('B',-20283,-19776),
            ('C',-19775,-19219),
            ('D',-19218,-18711),
            ('E',-18710,-18527),
            ('F',-18526,-18240),
            ('G',-18239,-17923),
            ('I',-17922,-17418),
            ('J',-17417,-16475),
            ('K',-16474,-16213),
            ('L',-16212,-15641),
            ('M',-15640,-15166),
            ('N',-15165,-14923),
            ('O',-14922,-14915),
            ('P',-14914,-14631),
            ('Q',-14630,-14150),
            ('R',-14149,-14091),
            ('S',-14090,-13319),
            ('V',-13318,-12839),
            ('W',-12838,-12557),
            ('X',-12556,-11848),
            ('Y',-11847,-11056),
            ('Z',-11055,-10247);

            2、建立mysql 函數(shù)
            CODE:
            DROP FUNCTION IF EXISTS hzcode;

            delimiter //

            CREATE FUNCTION hzcode (s CHAR(255)) RETURNS char
            BEGIN
            DECLARE hz_code int;
            DECLARE hz_py char;
            SET hz_code = ord(substring(s,1,1))*256+ord(substring(s,2,1))-65536 ;
            select py into hz_py from pyk where hz_code>=pyk.hz1 and hz_code<=pyk
            .hz2;
            RETURN hz_py;
            END
            //

            delimiter ;

            3、先測試一下
            mysql> select hzcode('南海龍王');
            +--------------------+
            | hzcode('南海龍王') |
            +--------------------+
            | N |
            +--------------------+
            1 row in set (0.00 sec)


            4、建立個(gè)測試表
            CODE:
            DROP TABLE IF EXISTS `f1`;
            create table f1 (
            name varchar(30),
            pykey varchar(1)
            );

            insert into f1(name) values
            ('張三'),
            ('李四'),
            ('王五'),
            ('趙六'),
            ('錢七');

            5、測試

            mysql> select * from f1;
            +------+-------+
            | name | pykey |
            +------+-------+
            | 張三 | NULL |
            | 李四 | NULL |
            | 王五 | NULL |
            | 趙六 | NULL |
            | 錢七 | NULL |
            +------+-------+
            5 rows in set (0.00 sec)

            mysql> update f1 set pykey = hzcode(name);
            Query OK, 5 rows affected (0.05 sec)
            Rows matched: 5 Changed: 5 Warnings: 0

            mysql> select * from f1;
            +------+-------+
            | name | pykey |
            +------+-------+
            | 張三 | Z |
            | 李四 | L |
            | 王五 | W |
            | 趙六 | Z |
            | 錢七 | Q |
            +------+-------+
            5 rows in set (0.00 sec)



            這樣就很方便地在MYSQL里查詢漢字的首字母了。 類似地也可以直接在MYSQL得到漢字拼音。 不過需要拼音表,函數(shù)寫法也不一樣。

            posted on 2007-06-17 20:26 PeakGao 閱讀(1507) 評(píng)論(3)  編輯 收藏 引用

            評(píng)論

            # re: 在mysql 里實(shí)現(xiàn)查詢漢字的拼音首字母(摘) 2008-03-25 13:28 jgf

            瓜娃子  回復(fù)  更多評(píng)論   

            # re: 在mysql 里實(shí)現(xiàn)查詢漢字的拼音首字母(摘) 2009-02-22 21:51 Hunter Fu

            非常有用,受教拉!  回復(fù)  更多評(píng)論   

            # re: 在mysql 里實(shí)現(xiàn)查詢漢字的拼音首字母(摘) 2009-05-07 13:25 過客

            t開頭的就查不了  回復(fù)  更多評(píng)論   


            只有注冊用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2007年4月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(9)

            隨筆分類(67)

            隨筆檔案(65)

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久人人爽人人爽人人片AV不 | 精品久久久久久中文字幕大豆网| 久久国产美女免费观看精品| 国产成人AV综合久久| 久久国产精品视频| 精品久久久无码21p发布| 久久99国产精品99久久| 色欲综合久久躁天天躁| 国产精品岛国久久久久| 中文字幕久久精品| 91精品久久久久久无码| 伊人久久精品无码二区麻豆| 伊人久久综合热线大杳蕉下载| 亚洲欧美国产精品专区久久| 国产成人久久AV免费| 伊色综合久久之综合久久| 69久久夜色精品国产69| 久久99国产精品久久99小说 | 狠狠色婷婷久久综合频道日韩| 久久国产精品成人影院| 精品久久久一二三区| 91亚洲国产成人久久精品网址| 久久精品国产AV一区二区三区| 久久国产视屏| 狠狠久久综合| 精品国产91久久久久久久a| 久久成人国产精品二三区| 亚洲精品美女久久久久99| 思思久久精品在热线热| 欧美一区二区久久精品| 青青热久久国产久精品| 久久影院亚洲一区| 四虎久久影院| 亚洲欧美一级久久精品| 久久久久99这里有精品10| 亚洲国产高清精品线久久| 欧美成a人片免费看久久| 久久亚洲电影| 狠狠色丁香婷婷久久综合| 性做久久久久久久久| 伊人色综合久久天天人手人婷 |