【发布时间】:2023-01-09 16:47:26
【问题描述】:
我有两个表 company_list 和 company_details。 company_list表有一个company_id列,company_details有一些与company_id公司相关的信息。我想将数据插入 company_details 表中,而 company_id 不在 company_details 表中。
我尝试了以下查询,但它给了我一个错误。
INSERT INTO company_details (company_id,detail_found)
VALUES ((SELECT company_id FROM company_list WHERE company_id NOT IN (SELECT company_id FROM company_details)), 'No data found');
错误是:
消息 512,级别 16,状态 1,第 27 行
子查询返回了 1 个以上的值。这是不允许的,当 子查询跟在 =、!=、<、<=、>、>= 之后,或者当子查询用作 一种表达。
该语句已终止。
如何使用返回多个值的子查询向表中插入数据?
【问题讨论】:
-
使用简单的
INSERT INTO . . . SELECT ... FROM查询
标签: sql sql-server sql-insert