MySQL中文漢字轉(zhuǎn)拼音的自定義函數(shù)和使用實(shí)例(首字的首字母)
fristPinyin : 此函數(shù)是將一個(gè)中文字符串的第一個(gè)漢字轉(zhuǎn)成拼音字母 (例如:"中國人"->Z)
CREATE 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
pinyin :此函數(shù)是將一個(gè)中文字符串對(duì)應(yīng)拼音母的每個(gè)相連 (例如:"中國人"->ZGR)
CREATE 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
示例:
mysql> select p.province, fristPinyin(p.province), pinyin(p.province) from province p;
+------------------+-------------------------+--------------------+
| province | fristPinyin(p.province) | pinyin(p.province) |
+------------------+-------------------------+--------------------+
| 北京市 | B | BJS |
| 天津市 | T | TJS |
| 河北省 | H | HBS |
| 山西省 | S | SXS |
| 內(nèi)蒙古自治區(qū) | N | NMGZZQ |
+------------------+-------------------------+--------------------+
5 rows in set
- MySQL 自定義函數(shù)CREATE FUNCTION示例
- 深入mysql創(chuàng)建自定義函數(shù)與存儲(chǔ)過程的詳解
- 淺談mysql 自定義函數(shù)
- Mysql中實(shí)現(xiàn)提取字符串中的數(shù)字的自定義函數(shù)分享
- mysql建立自定義函數(shù)的問題
- MySQL自定義函數(shù)簡(jiǎn)單用法示例
- 關(guān)于MySQL的存儲(chǔ)函數(shù)(自定義函數(shù))的定義和使用方法詳解
- MYSQL自定義函數(shù)判斷是否正整數(shù)的實(shí)例代碼
- MySQL自定義函數(shù)和存儲(chǔ)過程示例詳解
- MySQL通過自定義函數(shù)實(shí)現(xiàn)遞歸查詢父級(jí)ID或者子級(jí)ID
- mysql自定義函數(shù)原理與用法實(shí)例分析
相關(guān)文章
Centos7下安裝MySQL8.0.23的步驟(小白入門級(jí)別)
這篇文章主要介紹了Centos7下安裝MySQL8.0.23的步驟(小白入門級(jí)別),本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01
mysql myisam 優(yōu)化設(shè)置設(shè)置
mysql myisam 優(yōu)化設(shè)置設(shè)置,需要的朋友可以參考下。2010-03-03
Mysql啟動(dòng)報(bào)ERROR:2002的分析與解決
這篇文章主要給大家介紹了關(guān)于Mysql啟動(dòng)時(shí)報(bào)ERROR:2002問題的分析與解決方法,文中通過示例代碼介紹將該問題分析的非常詳細(xì),對(duì)同樣遇到這個(gè)問題的朋友們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-08-08
MySQL字符串日期格式轉(zhuǎn)換的幾種常用方法例子解析
這篇文章主要給大家介紹了MySQL字符串日期格式轉(zhuǎn)換的幾種常用方法例子解析,MySQL提供了多種函數(shù)來處理字符串日期格式的轉(zhuǎn)換,這些函數(shù)可以幫助用戶在不同的日期格式之間進(jìn)行轉(zhuǎn)換,以及進(jìn)行日期的加減和時(shí)間戳的轉(zhuǎn)換操作,需要的朋友可以參考下2024-11-11
Mysql 直接查詢存儲(chǔ)的Json字符串中的數(shù)據(jù)
本文主要介紹了Mysql直接查詢存儲(chǔ)的Json字符串中的數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
MySQL中使用innobackupex、xtrabackup進(jìn)行大數(shù)據(jù)的備份和還原教程
這篇文章主要介紹了MySQL中使用innobackupex、xtrabackup進(jìn)行大數(shù)據(jù)的備份和還原教程,xtrabackup用來對(duì)超過10G數(shù)據(jù)的Mysql進(jìn)行備份和還原任務(wù),需要的朋友可以參考下2014-09-09

