助记码的标量值函数(中文的拼音首字母)

本文介绍了如何使用SQL函数创建助记码,以中文名字的拼音首字母作为标识。然而,面临的问题是多音字处理,如'人参'的拼音'RC',在实际中可能造成混淆,因为'参'有多个读音,系统默认取第一个字母。
摘要由CSDN通过智能技术生成
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go




ALTER function [dbo].[GetPY](@str varchar(500)) 
returns varchar(500) 
as 
begin 
   declare @cyc int,@length int,@str1 varchar(100),@charcate varbinary(20) 
   set @cyc=1--从第几个字开始取 
   set @length=len(@str)--输入汉字的长度 
   set @str1=''--用于存放返回值 
   while @cyc<=@length 
       begin   
          select @charcate=cast(substring(@str,@cyc,1) as varbinary)--每次取出一个字并将其转变成二进制,便于与GBK编码表进行比较 
if @charcate>=0XB0A1 and @charcate<=0XB0C4 
         set @str1=@str1+'A'--说明此汉字的首字母为A,以下同上 
    else if @charcate>=0XB0C5 and @charcate<=0XB2C0 
      set @str1=@str1+'B' 
else if @charcate>=0XB2C1 and @charcate<=0XB4ED 
      set @str1=@str1+'C' 
else if @charcate>=0XB4EE and @charcate<&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值