中国第一Ajax站长门户:www.okajax.com   虚拟主机 域名注册 云主机

用sql转换汉字为拼音 - okajax.com - Ajax中国

我要投稿 会员登陆 RSS订阅 本站推荐:
您的位置主页 > 网页编程 > Sql > 用sql转换汉字为拼音

用sql转换汉字为拼音

2009-05-03    文章来源:互联网    浏览次数:

 

  1. create function fun_getPY(@str nvarchar(4000))  
  2. returns nvarchar(4000)  
  3. as 
  4. begin 
  5. declare @word nchar(1),@PY nvarchar(4000)  
  6. set @PY='' 
  7. while len(@str)>0  
  8. begin 
  9. set @word=left(@str,1)  
  10. --如果非汉字字符,返回原字符  
  11. set @PY=@PY+(case when unicode(@word) between 19968 and 19968+20901  
  12. then (select top 1 PY from (  
  13. select 'A' as PY,N'驁' as word  
  14. union all select 'B',N'簿' 
  15. union all select 'C',N'錯' 
  16. union all select 'D',N'鵽' 
  17. union all select 'E',N'樲' 
  18. union all select 'F',N'鰒' 
  19. union all select 'G',N'腂' 
  20. union all select 'H',N'夻' 
  21. union all select 'J',N'攈' 
  22. union all select 'K',N'穒' 
  23. union all select 'L',N'鱳' 
  24. union all select 'M',N'旀' 
  25. union all select 'N',N'桛' 
  26. union all select 'O',N'漚' 
  27. union all select 'P',N'曝' 
  28. union all select 'Q',N'囕' 
  29. union all select 'R',N'鶸' 
  30. union all select 'S',N'蜶' 
  31. union all select 'T',N'籜' 
  32. union all select 'W',N'鶩' 
  33. union all select 'X',N'鑂' 
  34. union all select 'Y',N'韻' 
  35. union all select 'Z',N'咗' 
  36. ) T   
  37. where word>=@word collate Chinese_PRC_CS_AS_KS_WS   
  38. order by PY ASCelse @word end)  
  39. set @str=right(@str,len(@str)-1)  
  40. end 
  41. return @PY  
  42. end 

 

文章评论(查看全部)

看不清楚?单击换一张。
loading.. 评论加载中....
关于我们 - 广告服务 - 版权隐私 - 免责声明 - RSS地图 - 网站地图 - 使用帮助 - 返回顶部