用SQL脚本获取汉字首字母,代码如下:
1
CREATE FUNCTION [dbo].[uf_GetPY](@str nvarchar(4000))
2
RETURNS nvarchar(4000)
3
AS
4
BEGIN
5
DECLARE @py TABLE(
6
ch char(1),
7
hz1 nchar(1) COLLATE Chinese_PRC_CS_AS_KS_WS,
8
hz2 nchar(1) COLLATE Chinese_PRC_CS_AS_KS_WS)
9
INSERT @py SELECT 'A',N'吖',N'鏊'
10
UNION ALL SELECT 'B',N'八',N'簿'
11
UNION ALL SELECT 'C',N'嚓',N'错'
12
UNION ALL SELECT 'D',N'哒',N'跺'
13
UNION ALL SELECT 'E',N'屙',N'贰'
14
UNION ALL SELECT 'F',N'发',N'馥'
15
UNION ALL SELECT 'G',N'旮',N'过'
16
UNION ALL SELECT 'H',N'铪',N'蠖'
17
UNION ALL SELECT 'J',N'丌',N'竣'
18
UNION ALL SELECT 'K',N'咔',N'廓'
19
UNION ALL SELECT 'L',N'垃',N'雒'
20
UNION ALL SELECT 'M',N'妈',N'穆'
21
UNION ALL SELECT 'N',N'拿',N'糯'
22
UNION ALL SELECT 'O',N'噢',N'沤'
23
UNION ALL SELECT 'P',N'趴',N'曝'
24
UNION ALL SELECT 'Q',N'七',N'群'
25
UNION ALL SELECT 'R',N'蚺',N'箬'
26
UNION ALL SELECT 'S',N'仨',N'锁'
27
UNION ALL SELECT 'T',N'他',N'箨'
28
UNION ALL SELECT 'W',N'哇',N'鋈'
29
UNION ALL SELECT 'X',N'夕',N'蕈'
30
UNION ALL SELECT 'Y',N'丫',N'蕴'
31
UNION ALL SELECT 'Z',N'匝',N'做'
32
DECLARE @i int
33
SET @i=PATINDEX('%[吖-做]%' COLLATE Chinese_PRC_CS_AS_KS_WS,@str)
34
WHILE @i>0
35
SELECT @str=REPLACE(@str,SUBSTRING(@str,@i,1),ch)
36
,@i=PATINDEX('%[吖-做]%' COLLATE Chinese_PRC_CS_AS_KS_WS,@str)
37
FROM @py
38
WHERE SUBSTRING(@str,@i,1) BETWEEN hz1 AND hz2
39
RETURN(@str)
40
END
CREATE FUNCTION [dbo].[uf_GetPY](@str nvarchar(4000))2
RETURNS nvarchar(4000)3
AS4
BEGIN5
DECLARE @py TABLE(6
ch char(1),7
hz1 nchar(1) COLLATE Chinese_PRC_CS_AS_KS_WS,8
hz2 nchar(1) COLLATE Chinese_PRC_CS_AS_KS_WS)9
INSERT @py SELECT 'A',N'吖',N'鏊'10
UNION ALL SELECT 'B',N'八',N'簿'11
UNION ALL SELECT 'C',N'嚓',N'错'12
UNION ALL SELECT 'D',N'哒',N'跺'13
UNION ALL SELECT 'E',N'屙',N'贰'14
UNION ALL SELECT 'F',N'发',N'馥'15
UNION ALL SELECT 'G',N'旮',N'过'16
UNION ALL SELECT 'H',N'铪',N'蠖'17
UNION ALL SELECT 'J',N'丌',N'竣'18
UNION ALL SELECT 'K',N'咔',N'廓'19
UNION ALL SELECT 'L',N'垃',N'雒'20
UNION ALL SELECT 'M',N'妈',N'穆'21
UNION ALL SELECT 'N',N'拿',N'糯'22
UNION ALL SELECT 'O',N'噢',N'沤'23
UNION ALL SELECT 'P',N'趴',N'曝'24
UNION ALL SELECT 'Q',N'七',N'群'25
UNION ALL SELECT 'R',N'蚺',N'箬'26
UNION ALL SELECT 'S',N'仨',N'锁'27
UNION ALL SELECT 'T',N'他',N'箨'28
UNION ALL SELECT 'W',N'哇',N'鋈'29
UNION ALL SELECT 'X',N'夕',N'蕈'30
UNION ALL SELECT 'Y',N'丫',N'蕴'31
UNION ALL SELECT 'Z',N'匝',N'做'32
DECLARE @i int33
SET @i=PATINDEX('%[吖-做]%' COLLATE Chinese_PRC_CS_AS_KS_WS,@str)34
WHILE @i>035
SELECT @str=REPLACE(@str,SUBSTRING(@str,@i,1),ch)36
,@i=PATINDEX('%[吖-做]%' COLLATE Chinese_PRC_CS_AS_KS_WS,@str)37
FROM @py38
WHERE SUBSTRING(@str,@i,1) BETWEEN hz1 AND hz239
RETURN(@str)40
END基于此,你想实现获取汉字拼音也不难了,哈哈
浙公网安备 33010602011771号