zoukankan      html  css  js  c++  java
  • SQL中文转拼音

    使用下方的函数..

    忘了从哪抄的了..留存一份

    如果只要首字母..建议将数据  Left(tableFiled,1) 后传入函数

    如果字段是空或者null, 不会报错..返回空

    方法体: 

    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE FUNCTION [dbo].[F_SYS_getPY]
    (
    @str NVARCHAR(4000)
    )
    RETURNS NVARCHAR(4000)
    AS
    BEGIN
    DECLARE @word NCHAR(1),@PY NVARCHAR(4000)
    SET @PY=''
    WHILE LEN(@str)>0
    BEGIN
    SET @word=LEFT(@str,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 @str=RIGHT(@str,LEN(@str)-1)
    END
    RETURN @PY
    END

    GO
  • 相关阅读:
    sublime3快捷键汇总
    css3百叶窗轮播图效果
    分页特效
    百度评分标准
    兼容问题汇总
    随机彩票
    js 时间函数 及相关运算大全
    JS贪吃蛇游戏
    《Vim实用技巧》阅读笔记 --- 移动及跳转
    《深入理解Linux网络技术内幕》阅读笔记 --- 路由基本概念
  • 原文地址:https://www.cnblogs.com/iiwen/p/10223949.html
Copyright © 2011-2022 走看看