这是一条mysql语句,您能告诉我它出了什么问题吗
insert into wip_inventory
(wip_inventory.amount)
values (
select
sum(planning.actual_cost) as c
from planning
where planning.progress='no'
)发布于 2015-05-23 20:17:54
您需要两组括号来使用values来表达这个逻辑(一个用于values列表,另一个用于子查询)。但是,这个关键字无论如何都是多余的:
insert into wip_inventory (wip_inventory.amount)
select sum(planning.actual_cost) as c
from planning
where planning.progress = 'no';发布于 2015-05-23 20:19:02
在您的查询中,只有一条记录会被添加到wip_inventory中,如果子查询返回多条记录,就会抛出错误。我认为您正在尝试插入子查询返回的所有记录,因此请使用INSERT INTO SELECT
insert into wip_inventory (wip_inventory.amount)
select sum(planning.actual_cost) as c
from planning
where planning.progress='no'https://stackoverflow.com/questions/30412531
复制相似问题