当前位置: 首页 > 图文教程 > 数据库 > MYSQL > SQL Server中取汉字拼音的函数

MYSQL
初学者在使用MySQL时必须了解的注意事项
实例剖析:MySQL数据库优化详解
RedHat 9.0下用rpm包安装mysql
MYSQL 数据库同步
Windows XP操作系统下的MYSQL安装过程
Mysql入门系列:MySQL数据目录的位置
Mysql入门系列:MYSQL日志文件维护
Mysql入门系列:优化MYSQL服务器
MySQL数据库磁盘优化
MySQL数据库中应当如何实施info()函数
解析:怎样在MySQL中获得更好的搜索结果
怎样修改 MySQL数据库中的密码
如何正确编写高质量高性能的MySQL语法
细化解析:MySQL 搜索中的大小写敏感性
如何正确的解决 MySQL中忽略用户的现象
详解MySQL数据库中Show命令的用法
轻松掌握 MySQL的数字类型以及建库策略
怎样处理 MySQL中与文件许可有关的问题
教你快速实现 MySQL查询结果的分页显示
解析:MySQL对“服务器端光标”的限制

MYSQL 中的 SQL Server中取汉字拼音的函数


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

Create  function fun_getPY
 (
    @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

请作者联系本站,及时附注您的姓名。联系邮箱:edu#ruanchen.com(把#改为@)。