if exists (select * from sysobjects where id = object_id(N'[fn_ChineseToSpell]') and xtype in (N'FN', N'IF', N'TF')) www.2cto.com
drop function [fn_ChineseToSpell]
GO
/*创建取拼音首字母函数*/
create function [dbo].[fn_ChineseToSpell](@strChinese varchar(500)='')
returns varchar(500)
as
begin /*函数实现开始*/
declare @strLen int,@return varchar(500),@i int
declare @n int,@c char(1),@chn nchar(1)
select @strLen=len(@strChinese),@return='',@i=0
while @i<@strLen
begin /*while循环开始*/
select @i=@i+1,@n=63,@chn=substring(@strChinese,@i,1)
if @chn>'z'/*原理:“字符串排序以及ASCII码表”*/
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 /*while循环结束*/
return(@return)
end /*函数实现结束*/
使用方式:
select dbo.[fn_ChineseToSpell]('魏保光')

最新文章

  1. 一次ie8模式下click无反应的小事
  2. icon图标
  3. text
  4. netcat命令
  5. http://www.oreilly.com/catalog/errataunconfirmed.csp?isbn=9780596529321
  6. [hive小技巧]同一份数据多种处理
  7. 转:java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
  8. js方法和prototype
  9. Eclipse版本及其代号
  10. Codevs 1172 Hankson 的趣味题 2009年NOIP全国联赛提高组
  11. Java中RMI框架
  12. css基础回顾-定位:position
  13. 并行(Parallelism)与并发(Concurrency)
  14. Scala 隐式转换及应用
  15. python中可变与不可变类型变量中一些较难理解的地方
  16. C++ STL库的总结以及实现原理
  17. git 创建分支
  18. (转)JVM——自定义类加载器
  19. Redis介绍及Jedis基础操作
  20. grep 正则表达

热门文章

  1. UNIX网络编程——getsockname和getpeername函数
  2. JavaScript中的枚举
  3. gfw列表
  4. OpenLDAP,一登录系统就修改密码
  5. XML约束之DTD
  6. Linux基础-目录结构
  7. 2013 acm 长沙网络赛 G题 素数+枚举 Goldbach
  8. android studio中断开SVN连接,并彻底清理项目中的.svn文件
  9. Python之字符串小代码解析
  10. TCP协议学习记录 (二) Ping程序