日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 取首字母_MySQL中获取拼音首字母的方法

發布時間:2023/12/9 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 取首字母_MySQL中获取拼音首字母的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前些天遇到獲取標題首字母的問題,數據庫數據很多一條條改太費勁了,網上查了下,果然有高人,分享下。

在 mysql 命令窗口中 :

新建數據表,

DROP TABLE IF EXISTS `pinyin`;

CREATE TABLE `pinyin` (

`letter` char(1) NOT NULL,

`chinese` char(1) NOT NULL,

PRIMARY KEY? (`letter`)

) ENGINE=MyISAM DEFAULT CHARSET=gbk;

插入數據

INSERT INTO `pinyin` VALUES

('A','驁'),

('B','簿'),

('C','錯'),

('D','鵽'),

('E','樲'),

('F','鰒'),

('G','腂'),

('H','夻'),

('J','攈'),

('K','穒'),

('L','鱳'),

('M','旀'),

('N','桛'),

('O','漚'),

('P','曝'),

('Q','囕'),

('R','鶸'),

('S','蜶'),

('T','籜'),

('W','鶩'),

('X','鑂'),

('Y','韻'),

('Z','咗');

仍在mysql命令窗口中執行

DELIMITER $$

DROP FUNCTION IF EXISTS `PINYIN`$$

CREATE FUNCTION `PINYIN`(str CHAR(255)) RETURNS char(255)

BEGIN

DECLARE hexCode char(4);

DECLARE pinyin varchar(255);

DECLARE firstChar char(1);

DECLARE aChar char(1);

DECLARE pos int;

DECLARE strLength int;

SET pinyin??? = '';

SET strLength = CHAR_LENGTH(LTRIM(RTRIM(str)));

SET pos?????? = 1;

SET @str????? = (CONVERT(str USING gbk));

WHILE pos <= strLength DO

SET @aChar = SUBSTRING(@str,pos,1);

SET hexCode = HEX(@aChar);

IF hexCode >= "8140" AND hexCode <= "FEA0" THEN

SELECT letter into firstChar

FROM?? pinyin

WHERE? chinese >= @aChar

LIMIT? 1;

ELSE

SET firstChar = @aChar;

END IF;

SET pinyin = CONCAT(pinyin,firstChar);

SET pos = pos + 1;

END WHILE;

RETURN UPPER(pinyin);

END$$

DELIMITER ;

操作前請備份數據庫

使用方法:SELECT pinyin('獲取漢字拼音首字母');

結果為 hqhzpyszm

或者直接執行 update ‘表’ set ‘字段名’ = pinyin('字段名');

如果發現有亂碼:

修改 my.ini 文件

default-character-set=gbk

共有兩處。。

然后修改mysql data目錄下的相應數據庫的db.opt配置文件

default-character-set=gbk

default-collation=gbk_chinese_ci

重啟mysql后 查詢測試,如果還是亂碼,將上方命令重新執行下。

總結

以上是生活随笔為你收集整理的mysql 取首字母_MySQL中获取拼音首字母的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。