我正在尝试使用一些硬编码或静态值的列将数据插入表中,然后从另一个表中选择其余的数据。我试过以下查询:
insert into wtdocversion
values (( select id from wtdocmaster),'col2','col3');
Run Code Online (Sandbox Code Playgroud)
但这会产生一个错误:
消息 512,级别 16,状态 1,第 1 行
子查询返回了 1 个以上的值。当子查询跟随 =、!=、<、<=、>、>= 或当子查询用作表达式时,这是不允许的。
您想删除values查询的一部分并执行INSERT\SELECT.
这是非常基本的 SQL,您可以在BOL 中阅读更多相关信息。
INSERT INTO wtdocversion (col1, col2, col3)
SELECT
id,
'col2',
'col3'
FROM wtdocmaster;
Run Code Online (Sandbox Code Playgroud)