博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
拆分字符串的表值函数
阅读量:7037 次
发布时间:2019-06-28

本文共 1216 字,大约阅读时间需要 4 分钟。

 1
--
拆分字符串的表值函数
 2
 3
alter
 
Function
 f_Split
 4
(
 5
    
@Str
 
Nvarchar
(
max
)
 6
)
Returns
 
@Re
 
Table
 7
(
 8
    Id 
int
 
Identity
, Val 
Nvarchar
(
max
)
 9
)
10
As
11
Begin
12
    
Declare
 
@Pos
 
Int
13
    
Set
 
@Pos
 
=
 
CharIndex
(N
'
,
'
@Str
)
14
    
While
 
@Pos
 
>
 
0
15
    
Begin
16
        
Insert
 
@Re
 
Values
(
Left
(
@Str
@Pos
 
-
 
1
))
17
        
Select
18
            
@Str
 
=
 
Stuff
(
@Str
1
@Pos
, N
''
),
19
            
@Pos
 
=
 
CharIndex
(N
'
,
'
@Str
)
20
    
End
21
22
    
If
 
@Str
 
>
 N
''
23
        
Insert
 
@Re
(Val) 
Values
(
@Str
)
24
25
    
Return
26
End
27
Go
28
29
Select
 
*
 
From
 dbo.f_Split(N
'
hh,hello world,hyt
'
)

 

 正好csdn上有人问到相关的东西了,把这个函数稍加改进下

 1
set
 ANSI_NULLS 
ON
 2
set
 QUOTED_IDENTIFIER 
ON
 3
go
 4
 5
Create
 
Function
 
[
dbo
]
.
[
f_Split
]
 6
(
 7
    
@Str
 
Nvarchar
(
max
),
 8
    
@Spliter
 
Nvarchar
(
2
)
 9
)
Returns
 
@Re
 
Table
10
(
11
    Id 
int
 
Identity
, Val 
Nvarchar
(
max
)
12
)
13
As
14
Begin
15
    
If
 
@Spliter
 
Is
 
Null
 
Or
 (
Len
(
@Spliter
)
=
0
)
16
    
Begin
17
        
Set
 
@Spliter
 
=
 N
'
,
'
18
    
End
19
20
    
Declare
 
@Pos
 
Int
21
    
Set
 
@Pos
 
=
 
CharIndex
(
@Spliter
@Str
)
22
    
While
 
@Pos
 
>
 
0
23
    
Begin
24
        
Insert
 
@Re
 
Values
(
Left
(
@Str
@Pos
 
-
 
1
))
25
        
Select
26
            
@Str
 
=
 
Stuff
(
@Str
1
@Pos
, N
''
),
27
            
@Pos
 
=
 
CharIndex
(
@Spliter
@Str
)
28
    
End
29
30
    
If
 
@Str
 
>
 N
''
31
        
Insert
 
@Re
(Val) 
Values
(
@Str
)
32
33
    
Return
34
End

 

 

 

你可能感兴趣的文章
tigase网络核心SockThread详解
查看>>
iotop 查看进程IO情况
查看>>
php获取网站域名 及 SERVER 相关变量
查看>>
如何搭建springboot + mybatis(一)
查看>>
sphinx学习(六)基本配置 common settings
查看>>
win7下安装hadoop2.2.0.涵盖64位
查看>>
【推荐】Keras教程:Python深度学习超级入门指南
查看>>
CentOS/RedHat/Debian/Ubuntu下添加开机启动项
查看>>
C3P0数据库连接池
查看>>
通过Java反射调用方法
查看>>
卷积神经网络在自然语言处理的应用
查看>>
数值类型与字节数组之间的相互转换
查看>>
uWSGI + Django @ Ubuntu
查看>>
iOS微信分享功能简单实现
查看>>
发往日本的电子邮件经常退信吗?
查看>>
传入参数方法,参数值变化
查看>>
Mongodb Sharding Cluster 三台
查看>>
C Primer Plus 第7章 C控制语句:分支和跳转 7.2 if语句中添加 else 关键字
查看>>
smartrpc使用--tcpserver服务
查看>>
Access denied for user 'XXX'@'localhost' (using password: YES)
查看>>