• 工作总结
  • 工作计划
  • 心得体会
  • 述职报告
  • 思想汇报
  • 发言讲话稿
  • 演讲稿
  • 申请书
  • 读后感
  • 报告材料
  • 策划方案
  • 当前位置: 写作资料库 > 其他范文 > 正文

    手写汉字查拼音【SQL,Server编写函数获取汉字的拼音码】

    时间:2018-08-15 16:21:34 来源:写作资料库 本文已影响 写作资料库手机站

    SQL Server编写函数获取汉字的拼音码(首字母)

    Create function fun_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

    --调用

    select dbo.fun_getpy("张三")

    --结果:ZS