SQL漢字轉(zhuǎn)換為拼音的函數(shù)
作者:佚名
SQL中有許多功能強(qiáng)大的函數(shù),下面為您介紹sql中漢字轉(zhuǎn)換為拼音的函數(shù),供您參考,希望能夠?qū)δ兴鶐椭?/div>
SQL中有多種的函數(shù),下面為您介紹sql中漢字轉(zhuǎn)換為拼音的函數(shù),供您參考。數(shù)據(jù)庫中先自定義一個(gè)函數(shù),再把下面代碼寫進(jìn)去,功能是得到漢字拼音首字母:
如下:
01 |
create function fun_getPY(@str nvarchar(4000)) |
02 |
returns nvarchar(4000) |
03 |
as |
04 |
begin |
05 |
declare @word nchar (1),@PY nvarchar(4000) |
06 |
set @PY= '' |
07 |
while len(@str)>0 |
08 |
begin |
09 |
set @word= left (@str,1) |
10 |
--如果非漢字字符,返回原字符 |
11 |
set @PY=@PY+( case when unicode(@word) between 19968 and 19968+20901 |
12 |
then ( select top 1 PY from ( |
13 |
select 'A' as PY,N '驁' as word |
14 |
union all select 'B' ,N '簿' |
15 |
union all select 'C' ,N '錯(cuò)' |
16 |
union all select 'D' ,N '鵽' |
17 |
union all select 'E' ,N '樲' |
18 |
union all select 'F' ,N '鰒' |
19 |
union all select 'G' ,N '腂' |
20 |
union all select 'H' ,N '夻' |
21 |
union all select 'J' ,N '攈' |
22 |
union all select 'K' ,N '穒' |
23 |
union all select 'L' ,N '鱳' |
24 |
union all select 'M' ,N '旀' |
25 |
union all select 'N' ,N '桛' |
26 |
union all select 'O' ,N '漚' |
27 |
union all select 'P' ,N '曝' |
28 |
union all select 'Q' ,N '囕' |
29 |
union all select 'R' ,N '鶸' |
30 |
union all select 'S' ,N '蜶' |
31 |
union all select 'T' ,N '籜' |
32 |
union all select 'W' ,N '鶩' |
33 |
union all select 'X' ,N '鑂' |
34 |
union all select 'Y' ,N '韻' |
35 |
union all select 'Z' ,N '咗' |
36 |
) T |
37 |
where word>=@word collate Chinese_PRC_CS_AS_KS_WS |
38 |
order by PY ASC ) else @word end ) |
39 |
set @str= right (@str,len(@str)-1) |
40 |
end |
41 |
return @PY |
42 |
end |
--函數(shù)調(diào)用實(shí)例:
select dbo.fun_getPY('中華人民共和國')
結(jié)果都為:ZHRMGHG
【編輯推薦】
責(zé)任編輯:段燃
來源:
互聯(lián)網(wǎng)


相關(guān)推薦




