我有必要这样做。
Declare @something varchar(100)
Declare @tempdata TABLE (temp varchar(100))
INSERT INTO @tempdata (temp) select case
when @something is null then 'temp1','temp2'
else @something
end
select * from @tempdata
看起来根据条件为空时在@tempdata数组中插入多个值是无效的。
如果未设置@something,如何向@tempdata添加多个值。
我试过这个
when @something is null then 'temp1,temp2'
然后尝试用分隔符逗号分割它,然后添加到@tempdata,但是在sql中拆分看起来并不容易。
感谢您的光临。
答案 0 :(得分:0)
您需要使用IF
语句,然后使用SELECT... UNION ALL
插入。
Declare @something varchar(100)
Declare @tempdata TABLE (temp varchar(100))
IF @something is null
BEGIN
INSERT INTO @tempdata (temp)
SELECT 'temp1' UNION ALL
SELECT 'temp2'
END
select * from @tempdata