快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

取得拼音字头的存储过程

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(\\\'?r\\\', \\\'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
返回类别: 教程
上一教程: 取数据窗口发生变化的一个函数(补充篇)
下一教程: SQL语法参考手册

您可以阅读与"取得拼音字头的存储过程"相关的教程:
· 取汉字拼音首字母的存储过程
· 取汉字拼音首字母的存储过程
· 在SQL Server的存储过程中调用Com组件
· 一个高效的数据分页的存储过程 可以轻松应付百万数据
· 处理孤立用户的存储过程
    微笑服务 优质保证 索取样品