我想多次插入到table2中。我想向列1中插入相同的@foreignId次数与select name from table1 where id = @id
Insert into table2(column1, column2)
values(@foreignId, (Select name from table1 where id = @id))
我收到错误
子查询返回了多个值。当 子查询遵循=,!=,<,<=,>,> =,或当子查询用作 表达式。
答案 0 :(得分:3)
尝试一下
GO
Insert into table2 (column1, column2)
Select @foreignId, name from table1 where id = @id
GO
答案 1 :(得分:2)
尝试使用INSERT INTO ... SELECT
构造:
INSERT INTO table2 (column1, column2)
SELECT @foreignId, name
FROM table1
WHERE id = @id;
我什至不知道SQL Server是否会在VALUES
子句中接受任何类型的子查询,但是即使这样,通过错误消息,该子查询也会返回多行。使用有关的建议是解决此问题的一种方法。
答案 2 :(得分:1)
选择不应用作子查询。您应该尝试以下查询。
Insert into table2(column1, column2)
Select @foreignId, name from table1 where id = @id
答案 3 :(得分:1)
您可以尝试
CDate(Me.tbDate.Value)