mssql 中文轉拼音首字母

2021-08-22 13:49:12 字數 1485 閱讀 5062

在做列車時刻表進行搜尋時用到中文轉拼音首字母時需要以下函式

create function fun_getpy

( @str nvarchar(4000)

) returns nvarchar(4000)

as begin

declare @word nchar(1),@py nvarchar(4000)

set @py=''

while len(@str)>0

begin

set @word=left(@str,1)

--如果非漢字字元,返回原字元

set @py=@py+(case when unicode(@word) between 19968 and 19968+20901

then (

select top 1 py

from

( select 'a' as py,n'驁' as word

union all select 'b',n'簿'

union all select 'c',n'錯'

union all select 'd',n'鵽'

union all select 'e',n'樲'

union all select 'f',n'鰒'

union all select 'g',n'腂'

union all select 'h',n'夻'

union all select 'j',n'攈'

union all select 'k',n'穒'

union all select 'l',n'鱳'

union all select 'm',n'旀'

union all select 'n',n'桛'

union all select 'o',n'漚'

union all select 'p',n'曝'

union all select 'q',n'囕'

union all select 'r',n'鶸'

union all select 's',n'蜶'

union all select 't',n'籜'

union all select 'w',n'鶩'

union all select 'x',n'鑂'

union all select 'y',n'韻'

union all select 'z',n'咗'

) t

where word>=@word collate chinese_prc_cs_as_ks_ws

order by py asc

) else @word

end)

set @str=right(@str,len(@str)-1)

end

return @py

end--測試

select dbo.fun_getpy('t北京大學醫學部')

mssql 中文轉拼音首字母

在做列車時刻表進行搜尋時用到中文轉拼音首字母時需要以下函式 create function fun getpy str nvarchar 4000 returns nvarchar 4000 as begin declare word nchar 1 py nvarchar 4000 set py ...

中文轉拼音首字母

使用者商品名稱簡拼搜尋 namespace common business 1.5.66 漢字轉拼音類 class pinyin 中文字串轉拼音首字母 strchangepin 漢字轉拼音的首字母 get first letter 漢字轉拼音 str2py 獲取拼音對應ascll碼 pinyin p...

漢字轉拼音首字母

public string hz2py string hz 獲得漢字的區位碼 else if tmp 45253 tmp 45760 else if tmp 47761 tmp 46317 else if tmp 46318 tmp 46825 else if tmp 46826 tmp 47009...