教您如何用SQL函数实现汉字得到首字母拼音

数据库 SQL Server
按汉字的首字母拼音搜索是时下一种流行的搜索方式,下面就将为您介绍如何使用SQL函数来实现这个功能,供您参考,希望对您能有所启迪。

由于时下的系统都有种流行的搜索方式,就是按汉字的首字母拼音搜索,下面就将为您介绍使用SQL函数来自动处理数据库中存储汉字得到首字母拼音的问题,供您参考,希望对您更好掌握SQL函数的使用有所帮助。

代码如下:

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('中华人民共和国')
结果都为:ZHRMGHG   首字母的拼音
 

 

【编辑推荐】

基于时间SQL函数详解

SQL中表变量是否必须替代临时表

SQL中表变量的不足

SQL循环语句的妙用

SQL循环语句示例

责任编辑:段燃 来源: 互联网
相关推荐

2010-10-25 10:20:33

ORACLE函数

2010-10-14 16:45:54

MySQL查询

2014-12-31 17:27:51

查询城市源码下载

2010-09-26 13:56:43

SQL远程查询

2010-09-06 16:07:21

SQL函数

2010-10-19 16:58:34

SQL Server日

2010-07-21 17:02:35

SQL Server取

2010-09-27 16:32:46

SQL Server日

2010-09-10 16:24:06

SQL函数

2010-09-24 16:52:18

sql DATENAM

2010-09-09 09:59:37

SQL函数TRUNC

2010-10-26 10:48:16

ORACLE备份

2010-10-21 14:06:22

定义SQL Serve

2010-09-27 16:48:07

sql server时

2010-11-29 13:28:55

sybase自动备份

2010-11-18 16:27:37

2010-11-25 14:56:46

MySQL全文查询

2010-11-22 16:05:53

MySQL多表插入

2010-11-16 09:49:22

Oracle重建索引

2010-10-14 10:28:18

MySQL动态视图
点赞
收藏

51CTO技术栈公众号