目前SQL Server存储过程参数类型还不支出数组类型,暂且当一回标题党吧~
这有时会让人觉得不如意
要实现功能,变通的方法有几个
1、临时表
2、XML数据类型(2005+ 支持)
3、字符串拆分
顺便给出第3种方法的简单实现,这中拆分可以适用与很多小场合
需要用其他字符分割的就讲","改为你的符号吧~
![SQL <wbr>Server存储过程中使用'数组参数' SQL <wbr>Server存储过程中使用'数组参数'](http://blogimg.sinajs.cn/images/control/face/003.gif)
这有时会让人觉得不如意
要实现功能,变通的方法有几个
1、临时表
2、XML数据类型(2005+ 支持)
3、字符串拆分
顺便给出第3种方法的简单实现,这中拆分可以适用与很多小场合
-- "数组"的字符串格式:A,B,C,D, (即用逗号分割,每个字符后面均带上","号)
-- 假定有users"数组"字符串,需要拆分出每个user
declare @users varchar(1000),@m int, @n int, @ user varchar(20)
set @users = 'john,ken,candy,'
set @m = charindex( ',',@tags)
set @n = 1
while(@m > 0)
begin
set
@
user=substring(@users,@n,@m-@n)
set
@n = @m + 1
set
@m = charindex(
',',@users,@n)
-- 得到 user
print @
user
end
-- 假定有users"数组"字符串,需要拆分出每个user
declare @users varchar(1000),@m int, @n int, @ user varchar(20)
set @users = 'john,ken,candy,'
set @m = charindex( ',',@tags)
set @n = 1
while(@m > 0)
begin
end
需要用其他字符分割的就讲","改为你的符号吧~