快捷搜索:   服务器  安全  linux 安全  MYSQL  dedecms

用sql转换汉字为拼音

  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 
顶(1)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论