我有一张临时表
@MyTmpTable(col1, col2, col3, col4)
我的存储过程SP1
返回3列值
我可以用:
insert into @MyTmpTable (col2, col3, col4) exec SP1
填充@MyTmpTable
但col1
值始终为null
,有什么方法可以做到这样吗?
declare @var1 varchar(10) = 'myvalue';
insert into @MyTable(col2, col3, col4) @var1, exec SP1
有人可以帮忙吗?
答案 0 :(得分:1)
如果您的col1始终为null,则可以使用默认值创建它以满足您的工作要求。请参阅下面的演示
create table #test
(
id int default null,
id1 int,
id2 int
)
create proc usp_test
as
begin
select rand()*10,rand()*20
end
insert into #test
(id1,id2)
exec usp_test
答案 1 :(得分:0)
您可以在插入后更新col1:
update @MyTmpTable set col1 = 'myvalue' where col1 is null;