取得拼音字头的存储过程

存储过程|拼音

-- =============================================
-- Create scalar function (NWGetPYFirst)
-- =============================================
IF EXISTS (SELECT *
 FROM   sysobjects
 WHERE  name = N'NWGetPYFirst')
 DROP FUNCTION NWGetPYFirst
GO

CREATE FUNCTION NWGetPYFirst
(@str varchar(500) = '')
RETURNS varchar(500)
AS
BEGIN
 Declare @strlen int,
  @return varchar(500),
  @ii int,
  @c char(1),
  @chn nchar(1)
 --//初始化变量
 Declare @pytable table(
 chn char(2) COLLATE Chinese_PRC_CS_AS NOT NULL,
 py char(1) COLLATE Chinese_PRC_CS_AS NULL,
 PRIMARY KEY (chn)
   )
 insert into @pytable values('吖', 'A')
 insert into @pytable values('八', 'B')
 insert into @pytable values('嚓', 'C')
 insert into @pytable values('咑', 'D')
 insert into @pytable values('妸', 'E')
 insert into @pytable values('发', 'F')
 insert into @pytable values('旮', 'G')
 insert into @pytable values('铪', 'H')
 insert into @pytable values('丌', 'I')
 --insert into @pytable values('丌', 'J')
 insert into @pytable values('咔', 'K')
 insert into @pytable values('垃', 'L')
 insert into @pytable values('嘸', 'M')
 insert into @pytable values('拏', 'N')
 insert into @pytable values('噢', 'O')
 insert into @pytable values('妑', 'P')
 insert into @pytable values('七', 'Q')
 insert into @pytable values('呥', 'R')
 insert into @pytable values('仨', 'S')
 insert into @pytable values('他', 'T')
 insert into @pytable values('屲', 'U')
 --insert into @pytable values('屲', 'V')
 --insert into @pytable values('屲', 'W')
 insert into @pytable values('夕', 'X')
 insert into @pytable values('丫', 'Y')
 insert into @pytable values('帀', 'Z')

 select @strlen = len(@str), @return = '', @ii = 0
 --//循环整个字符串,用拼音的首字母替换汉字
 while @ii < @strlen
 begin
  select @ii = @ii + 1, @chn = substring(@str, @ii, 1)
  if @chn > 'z' --//检索输入的字符串中有中文字符
   SELECT @c = max(py)
   FROM @pytable
   where chn <= @chn
  else
   set @c=@chn
 
  set @return=@return+@c
 end
 return @return
END
GO

-- =============================================
-- Example to execute function
-- =============================================
SELECT dbo.NWGetPYFirst('梦想国度'), dbo.NWGetPYFirst('noctwolf分享源码'), dbo.NWGetPYFirst('')
GO

时间: 2024-09-17 03:33:48

取得拼音字头的存储过程的相关文章

PHP汉字转换为拼音字头原理

  GB 2312中对所收汉字进行了"分区"处理,每区含有94个汉字/符号.这种表示方式也称为区位码. 1)01-09区为特殊符号. 2)16-55区为一级汉字,按拼音排序.  3)56-87区为二级汉字,按部首/笔画排序. 4)10-15区及88-94区则未有编码. 在使用GB2312的程序中,通常采用EUC储存方法,以便兼容于ASCII.浏览器编码表上的"GB2312",通常都是指"EUC-CN"表示法. 每个汉字及符号以两个字节来表示.第一

域名小知识

1.什么是Internet域名?Internet域名是Internet网络上的一个服务器或一个网络系统的名字,在全世界,没有重复的域名.域名的形式是以若干个英文字母和数字组成,由"."分隔成几部分, 如ibm.com就是一个域名.从社会科学的角度看,域名已成为了Internet文化的组成部分. 从商界看,域名已被誉为"企业的网上商标".没有一家企业不重视自己产品的标识--商标, 而域名的重要性和其价值,也已经被全世界的企业所认识.TOP 2.域名与网址有什么区别?一

在线租用CRM 成功源于细节

密斯·凡·德罗是20世纪世界四位最伟大的建筑师之一,在被要求用一句最概括的话来描述他成功的原因时,他只说了五个字"魔鬼在细节".伟大源于细节的积累,从小事做起,只有把小事都做好了,做到无可挑剔了,才有可能把大事做得尽善尽美. 我们来看看Google的Gmail,为什么Google会投入强大的研发精力来做免费的Gmail呢?而且,细节的功能更加出色.当您编写Gmail邮件的时候,即写即存,无需手动保存;当选定附件后,一边编写邮件,一边仍然可以自动上传附件;一边看对方的邮件,一边http:

ajax-我想输入商品名称,自动补全助记码??

问题描述 我想输入商品名称,自动补全助记码?? 现在我有一个商品名称的输入框,我想输入完商品名称,离开的时候,就会自动补全助记码,就是商品名称拼音字头???在网页上 解决方案 http://blog.csdn.net/it_wangxiangpan/article/details/6361392

取汉字拼音首字母的存储过程

存储过程|汉字|拼音 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+(c

mssql server 存储过程获取汉字拼音头字母函数

 代码如下 复制代码 CREATE function fn_GetPy(@str nvarchar(4000)) returns nvarchar(4000) --WITH ENCRYPTION as begin declare @intLenint declare @strRetnvarchar(4000) declare @temp nvarchar(100) set @intLen = len(@str) set @strRet = '' while @intLen > 0 begin s

sql存储过程获取汉字拼音头字母函数

复制代码 代码如下: --函数 CREATE function fn_GetPy(@str nvarchar(4000)) returns nvarchar(4000) --WITH ENCRYPTION as begin declare @intLenint declare @strRetnvarchar(4000) declare @temp nvarchar(100) set @intLen = len(@str) set @strRet = '' while @intLen > 0 be

wps如何将生僻字头上加上一体化的拼音标注

  在Word或WPS版面中,利用"拼音指南"工具,实现起来就比较方便. 在WPS中选择基准文字后,点击"开始→文字菜单→拼音指南"命令. 设置字体格式.大小.微调等,确定. 依次执行上述操作,设置所有生僻字. 如果是在Word中操作,选择汉字之后,直接点击"开始"选项卡中的拼音指南文字工具进行设置即可.

取得汉字字符串的拼音首字母的mssql函数

函数|汉字|拼音|字符串 drop function fun_getPYgoSET QUOTED_IDENTIFIER ONgoSET ANSI_NULLS ONgo----取汉字拼音首字母的存储过程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