sqlserver实现获取汉字助记码功能汉字拼音字母

--01--首先创建一个函数,其功能就是功能是得到汉字拼音首字母

仪征网站建设公司成都创新互联公司,仪征网站设计制作,有大型网站制作公司丰富经验。已为仪征上千多家提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的仪征做网站的公司定做!

go

if exists (select * from sysobjects where name='fun_getPY' and xtype='Fn')

begin

drop function fun_getPY

end

go

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

go

--函数调用实例1:生成指定字符的助记码 

select dbo.fun_getPY('中国-郑州') FhelperCode 


本文名称:sqlserver实现获取汉字助记码功能汉字拼音字母
转载来于:http://pwwzsj.com/article/gpgchh.html