在子查询中插入包含多个值的表

时间:2012-11-23 15:44:07

标签: sql insert

INSERT INTO Reference_TB] ([RequestID] ,[WaveID]) 
VALUES (2222,(select tWaveID from @Table2))

我使用上面的查询插入表中。我知道@Table2有多个tWaveID,这就是显示错误的原因:

  

子查询返回的值超过1。当子查询遵循=,!=,<,< =,>,> =或子查询用作表达式时,不允许这样做。

如何解决此问题,并为所有条目插入twaveID重复RequestID作为2222

2 个答案:

答案 0 :(得分:6)

使用INSERT ... SELECT语句而不是子查询:

INSERT INTO Reference_TB] ([RequestID] ,[WaveID]) 
(select 2222, tWaveID from @Table2)

答案 1 :(得分:4)

未确定准确的语法,因为您没有指定系统。

使用Insert select将插入所有值

INSERT INTO Reference_TB] ([RequestID] ,[WaveID])
select 2222,tWaveID from @Table2