- declare @strlen int,@return varchar(500),@ii int
- declare @n int,@c char(1),@chn nchar(1),@str varchar(500)
- set @str = '我爱伟大的周星驰'
- select @strlen=len(@str),@return='',@ii=0
- while @ii<@strlen
- begin
- select @ii=@ii+1,@n=63,@chn=substring(@str,@ii,1)
- if @chn>'z'
- begin
- --select @c,char(@n)
- 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
- -- select @chn,@c
- end
- else set @c='a'
- set @return=@return+@c
- end
- select @return
- --SELECT CHAR(64)
汉字转为拼音码 (转)
最新推荐文章于 2020-08-11 10:27:20 发布