sql函数 获取汉字词组首字母

来源:互联网 发布:python书籍 知乎 编辑:程序博客网 时间:2024/05/22 02:37
/********************************************************************************* *函数名称 : [F_GetZM]*功能描述 : 获取汉字拼音首字母*输入参数 : @str  ---要获取首字母的汉字词组*返 回 值 : nvarchar(4000)  ***********************************************************************************/ALTER function [dbo].[F_GetZM](@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

0 0