zoukankan      html  css  js  c++  java
  • 生成汉字助记码

    ALTER FUNCTION getPinYin(@HZ NVARCHAR(4000))
    RETURNS NVARCHAR(4000)
    AS
    BEGIN
    DECLARE @word NCHAR(1)
    DECLARE @PY NVARCHAR(4000)
    SET @PY = ''
    WHILE LEN(@HZ) > 0
      BEGIN
       SET @word = LEFT(@HZ,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 @HZ = RIGHT(@HZ,LEN(@HZ)-1)
      END
      RETURN @PY
    END
  • 相关阅读:
    c语言字符串_续
    c语言中文件的操作
    Linux基础知识
    netstat
    wireshark 过滤规则
    常用cmd命令
    优化过的redis封装类
    二十三岁,新的起点
    计划看的书目
    [转载]爱上一个给予你正能量的人
  • 原文地址:https://www.cnblogs.com/armanda/p/3611087.html
Copyright © 2011-2022 走看看