ALTER FUNCTION [dbo].[GetPy](@Str varchar(500)='')
returns varchar(500)
as
begin
--定义变量
declare @strlen int, @return varchar(500), @ii int
declare @n int, @c char(1),@chn nchar(1)
--设置初始值
select @strlen=len(@str),@return='',@ii=0
set @ii=0
--开始循环取出没个字符
while @ii<@strlen
begin
select @ii=@ii+1,@n=63,@chn=substring(@str,@ii,1)
if @chn>'z'
select @n = @n +1 ,@c = case chn when @chn then char(@n) else @c end
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 '妑'
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
else set @c=@chn
set @return=@return+@c
end
return(@return)
end
汉字转拼音
最新推荐文章于 2022-10-10 12:44:23 发布