当前位置:主页 > 数据库 > MsSql >

sqlServer 获取汉字字串的拼音声母

时间:2021-02-07 14:48:57 | 栏目:MsSql | 点击:

复制代码 代码如下:

CREATE function fGetPy(@str varchar(500)='')
returns varchar(500)
as
begin
declare @strlen int,@return varchar(500),@ii int
declare @c nchar(1),@chn nchar(1)
select @strlen=len(@str),@return='',@ii=0
set @ii=0
while @ii<@strlen
begin
select @ii=@ii+1,@chn=substring(@str,@ii,1)
if @chn>='吖'
select @c = char(count(*)+63) from (
select top 27 * from (
select chn = '吖'
union all select '八'
union all select '嚓'
union all select '??'
union all select '??'
union all select '发'
union all select '旮'
union all select '铪'
union all select '丌' --because have no 'i'
union all select '丌'
union all select '咔'
union all select '垃'
union all select '?`'
union all select '??'
union all select '噢'
union all select '?r'
union all select '七'
union all select '??'
union all select '仨'
union all select '他'
union all select '??' --no 'u'
union all select '??' --no 'v'
union all select '??'
union all select '夕'
union all select '丫'
union all select '??'
union all select @chn
) as a
order by chn COLLATE Chinese_PRC_CI_AS ) as b
where b.chn <=@chn
else set @c=@chn
set @return=@return+@c
end
return(@return)
end

您可能感兴趣的文章:

相关文章