0

我尝试将计算出的平均值从一个表插入到另一个表中,编写如下所示的 sql,但它没有用。有人可以帮我吗?我怎样才能像 Oracle 中的存储过程一样编写它来满足许多状态,即CA, IL, GA, WI....?

 INSERT INTO Employee(averageSalary, averageTax)
  (SELECT AVG(Salary), AVG(Tax)
   FROM HrDeptEmployee 
   WHERE State = 'NY')
4

1 回答 1

1

去掉选择周围的括号,这不是子选择。

编辑: 对于评论中的第二个问题(错误:目标表的 ID 列的空值):

像这样将要插入​​的 id 添加到您的选择列表中(假设您要使用 id 1):

INSERT INTO Employee(ID, averageSalary, averageTax)
SELECT 1, AVG(Salary), AVG(Tax)
  FROM HrDeptEmployee 
 WHERE State = 'NY'
于 2013-08-13T08:37:25.643 回答