阳光网驿-企业信息化交流平台【DTC零售连锁全渠道解决方案】

 找回密码
 注册

QQ登录

只需一步,快速开始

扫描二维码登录本站

手机号码,快捷登录

老司机
查看: 5097|回复: 6

[推荐] SQL中将汉字转换成拼音,可以用在助记码的录入上

[复制链接]
  • TA的每日心情
    慵懒
    2017-12-4 14:45
  • 签到天数: 148 天

    [LV.7]常住居民III

    发表于 2008-9-25 12:22:52 | 显示全部楼层 |阅读模式
    --SQL中将汉字转换成拼音,这里是转换汉字首拼音,如果需要全部转换,在以下程序中稍微改几个数字就可以了
    --SQL使用
    --创建翻译函数
    create function whk_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.whk_fun_getPY('中华人民共和国')
    --结果都为:ZHRMGHG

    评分

    参与人数 1阳光币 +1 稿费 +4 收起 理由
    qazwsxedc + 1 + 4 精品文章奖励

    查看全部评分

    楼主热帖
    启用邀请码注册,提高发帖质量,建设交流社区

    该用户从未签到

    发表于 2009-8-1 10:07:33 | 显示全部楼层
    不需要汉字、拼音编码库吗?
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    2020-7-22 13:13
  • 签到天数: 259 天

    [LV.8]以坛为家I

    发表于 2009-8-5 08:00:59 | 显示全部楼层
    非常好的资料,谢谢共享。
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    郁闷
    2011-2-11 13:30
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    发表于 2010-1-30 16:04:31 | 显示全部楼层

    这个功能好,马上看一下,很有用呀

    这个功能好,马上看一下,很有用呀
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    2014-9-29 21:54
  • 签到天数: 24 天

    [LV.4]偶尔看看III

    发表于 2010-2-19 18:24:22 | 显示全部楼层
    学习啦!谢谢楼主!

    评分

    参与人数 1稿费 -2 收起 理由
    wum -2 清理水帖,一份耕耘一份收获

    查看全部评分

    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    奋斗
    16 小时前
  • 签到天数: 2967 天

    [LV.Master]伴坛终老

    发表于 2015-6-22 12:18:26 | 显示全部楼层
    感谢楼主提供源程序,有时间试试。谢谢!
    启用邀请码注册,提高发帖质量,建设交流社区
  • TA的每日心情
    开心
    2017-10-24 15:24
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    发表于 2017-10-12 17:44:16 | 显示全部楼层
    这个比较实用…………………………………………收下备用………………………………………………
    启用邀请码注册,提高发帖质量,建设交流社区
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表