• 生成sqlserver拼音码


    --生成拼音首码  
      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 Product_ID , dbo.fn_GetPy(Product_Name) AS pymc FROM dbo.T_Product
    
    update dbo.T_Product set  Product_Pinyin=dbo.fn_GetPy(Product_Name) 
  • 相关阅读:
    C# 代理与事件上(delegate)
    串口编程(SerialPort类)
    java提取QQ邮箱中的邮箱地址
    javascript 调用onclick动作的几种方式。
    python的一些扩展模块,关于Reserving的....
    [ZZ]硬件虚拟化漫谈
    Intel VTx 技术手册 目录
    VTx技术手册杂记
    关于磁盘分析的一些资料
    ReactOS下的Sysutils目录.
  • 原文地址:https://www.cnblogs.com/Thenext/p/11229108.html
Copyright © 2020-2023  润新知