zoukankan      html  css  js  c++  java
  • sql 取汉字首字母

    Create function fn_GetPy(@str  nvarchar(4000))
      returns  nvarchar(4000)  
      --用于加密
      --WITH  ENCRYPTION  
      as  
      begin  
      declare  @intLen int  
      declare  @strRet nvarchar(4000)  
      declare  @temp  nvarchar(100)  
      set  @intLen  =  len(@str)  
      set  @strRet  =  ''  
      while  @intLen  >  0  
      begin  
      set  @temp  =  ''  
      select  @temp  =  case    
      when  substring(@str,@intLen,1)  >=  ''  then  'Z'  
      when  substring(@str,@intLen,1)  >=  ''  then  'Y'  
      when  substring(@str,@intLen,1)  >=  ''  then  'X'  
      when  substring(@str,@intLen,1)  >=  ''  then  'W'  
      when  substring(@str,@intLen,1)  >=  ''  then  'T'  
      when  substring(@str,@intLen,1)  >=  ''  then  'S'  
      when  substring(@str,@intLen,1)  >=  ''  then  'R'  
      when  substring(@str,@intLen,1)  >=  ''  then  'Q'  
      when  substring(@str,@intLen,1)  >=  ''  then  'P'  
      when  substring(@str,@intLen,1)  >=  ''  then  'O'  
      when  substring(@str,@intLen,1)  >=  ''  then  'N'  
      when  substring(@str,@intLen,1)  >=  ''  then  'M'  
      when  substring(@str,@intLen,1)  >=  ''  then  'L'  
      when  substring(@str,@intLen,1)  >=  ''  then  'K'  
      when  substring(@str,@intLen,1)  >=  ''  then    'J'  
      when  substring(@str,@intLen,1)  >=  ''  then  'H'  
      when  substring(@str,@intLen,1)  >=  ''  then  'G'  
      when  substring(@str,@intLen,1)  >=  ''  then  'F'  
      when  substring(@str,@intLen,1)  >=  ''  then  'E'  
      when  substring(@str,@intLen,1)  >=  ''  then  'D'  
      when  substring(@str,@intLen,1)  >=  ''  then  'C'  
      when  substring(@str,@intLen,1)  >=  ''  then  'B'  
      when  substring(@str,@intLen,1)  >=  ''  then  'A'  
      else  rtrim(ltrim(substring(@str,@intLen,1)))  
      end  
      --对于汉字特殊字符,不生成拼音码  
      if  (ascii(@temp)>127)  set  @temp  =  ''  
      --对于英文中小括号,不生成拼音码  
      if  @temp  =  '('  or  @temp  =  ')'  set  @temp  =  ''  
      select  @strRet  =  @temp  +  @strRet  
      set  @intLen  =  @intLen  -  1  
      end  
      return  lower(@strRet)  
      end

    调用方法

    select dbo.fn_GetPy('汉字') py

     出处:http://www.cnblogs.com/xilipu31/

  • 相关阅读:
    Python中获取异常(Exception)信息
    python中的构造函数和析构函数
    windows下python检查文件是否被其它文件打开
    python怎样压缩和解压缩ZIP文件
    Python递归遍历《指定目录》下的所有《文件》
    HTML基础知识(w3school)
    关于c#除法运算的问题
    WPF如何给窗口Window增加阴影效果
    图片加载,创建事件监听
    版本回退的冲突问题
  • 原文地址:https://www.cnblogs.com/SoftWareIe/p/5048314.html
Copyright © 2011-2022 走看看