zoukankan      html  css  js  c++  java
  • sql实现取汉字大写首字母

    create   FUNCTION   [dbo].[f_GetPY](@str nvarchar(4000)) 
    RETURNS   nvarchar(4000) 
    AS 
    BEGIN 
    DECLARE   @py   TABLE( 
    ch   char(1), 
    hz1   nchar(1)   COLLATE   Chinese_PRC_CS_AS_KS_WS, 
    hz2   nchar(1)   COLLATE   Chinese_PRC_CS_AS_KS_WS) 
    INSERT   @py   SELECT   'A','','' 
    UNION     ALL   SELECT  'B','','簿' 
    UNION     ALL   SELECT  'C','','' 
    UNION     ALL   SELECT  'D','','' 
    UNION     ALL   SELECT  'E','','' 
    UNION     ALL   SELECT  'F','','' 
    UNION     ALL   SELECT  'G','','' 
    UNION     ALL   SELECT  'H','','' 
    UNION     ALL   SELECT  'J','','' 
    UNION     ALL   SELECT  'K','','' 
    UNION     ALL   SELECT  'L','','' 
    UNION     ALL   SELECT  'M','','' 
    UNION     ALL   SELECT  'N','','' 
    UNION     ALL   SELECT  'O','','' 
    UNION     ALL   SELECT  'P','','' 
    UNION     ALL   SELECT  'Q','','' 
    UNION     ALL   SELECT  'R','','' 
    UNION     ALL   SELECT  'S','','' 
    UNION     ALL   SELECT  'T','','' 
    UNION     ALL   SELECT  'W','','' 
    UNION     ALL   SELECT  'X','','' 
    UNION     ALL   SELECT  'Y','','' 
    UNION     ALL   SELECT  'Z','','' 
    DECLARE   @i   int 
    SET   @i=PATINDEX('%[吖-做]%'   COLLATE   Chinese_PRC_CS_AS_KS_WS,@str) 
    WHILE   @i> 0 
    SELECT   @str=REPLACE(@str,SUBSTRING(@str,@i,1),ch) 
    ,@i=PATINDEX('%[吖-做]%'   COLLATE   Chinese_PRC_CS_AS_KS_WS,@str) 
    FROM   @py 
    WHERE   SUBSTRING(@str,@i,1)   BETWEEN   hz1   AND   hz2 
    RETURN(@str) 
    END 

  • 相关阅读:
    RocketMq总结(六) -- 顺序消息
    RocketMq总结(五) -- 消息队列负载均衡和再分配
    RocketMq总结(三) -- 消费者启动 MQClientInstance
    归并排序
    CMS垃圾收集器总结
    桶排序
    快速排序
    ThreadLocal的妙用
    NC_41 找最小的k个数
    RocketMq一条消息存储结构
  • 原文地址:https://www.cnblogs.com/SoftWareIe/p/6709188.html
Copyright © 2011-2022 走看看