1
create
function
split(
@SourceSql
varchar
(
8000
),
@Code
varchar
(
10
))
2
returns
@temp
table
(sp
varchar
(
1000
))
3
--
实现split功能 的函数
4
--
date :2007-7-10
5
--
Author :sp
6
as
7
begin
8
declare
@i
int
9
set
@SourceSql
=
rtrim
(
ltrim
(
@SourceSql
))
10
set
@i
=
charindex
(
@Code
,
@SourceSql
)
11
while
@i
>=
1
12
begin
13
insert
@temp
values
(
left
(
@SourceSql
,
@i
-
1
))
14
set
@SourceSql
=
substring
(
@SourceSql
,
@i
+
1
,
len
(
@SourceSql
)
-
@i
)
15
set
@i
=
charindex
(
@Code
,
@SourceSql
)
16
end
17
if
@SourceSql
<>
'
/
'
18
insert
@temp
values
(
@SourceSql
)
19
return
20
end
21
用法如下:
22
select
*
from
dbo.split(
'
1,2,3,4,5
'
,
'
,
'
)

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22
