当前位置: 首页 > 图文教程 > 数据库 > MSSQL > sqlServer 获取汉字字串的拼音声母

MSSQL
金额阿拉伯数字转换为中文的自定义函数
关于SQL SERVER建立索引需要注意的问题
怎样获得SQL Server的优化性能?
收集SQL Server统计信息
不通过dsn访问sql server
简化SQL语句一例
数据库的数据挖掘概述(一)
数据库的数据挖掘概述(二)
谈数据库中模糊数据的输入与判别
ms sql删除重复的记录
SQL语句性能调整原则
通过HTTP访问SQL Server 2000数据库
使用SQL Server 将现有代码作为Web 服务提供
自定义用于ASP Web站点的SQL 7.0数据库(1)
自定义用于ASP Web站点的SQL 7.0数据库(2)
数据库查询结果的动态排序(1)
数据库查询结果的动态排序(2)
数据库查询结果的动态排序(3)
数据库查询结果的动态排序(4)
数据库查询结果的动态排序(5)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 211 ::
收藏到网摘: n/a

sqlServer 中 获取汉字字串的拼音声母,需要的朋友可以参考下。
复制代码 代码如下:

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 '妑'
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