SQL子查询返回多个值错误

问题描述 投票:0回答:1

嗨有人可以帮我找到以下插入查询的问题吗?我正在尝试将员工值从一个表插入到另一个表。但下面的查询返回错误,例如 “子查询返回超过 1 个值。当子查询后面有 =、!=、<, <= , >、>= 或子查询用作表达式时,不允许这样做。”

声明@EmployeeDetails AS [dbo].[Employee]

插入@EmployeeDetails 价值观(101 ) 插入@EmployeeDetails 价值观(102 )

INSERT INTO [dbo].[EmpCopy] (EmpId, Dept)) 
values (
(SELECT EmpId FROM @EmployeeDetails)
,'Sales')
sql subquery
1个回答
1
投票

如果您想插入另一个表中的所有数据,则不必指定值

正确的语法是:

INSERT INTO [dbo].[EmpCopy] (EmpId, Dept)
SELECT EmpId, 'Sales'
FROM @EmployeeDetails
© www.soinside.com 2019 - 2024. All rights reserved.