select
(select sum((lingB.单价-kucun.进价)*lingB.数量) from lingB where kucun.名称=lingB.名称 ) as 利润
from lingB,kucun
where lingB.名称=kucun.名称
总提示 在包含外部引用的被聚合表达式中指定了多个列。如果被聚合的表达式包含外部引用,那么该外部引用就必须是该表达式中所引用的唯一的一列。
哪里不对啊?
(select sum((lingB.单价-kucun.进价)*lingB.数量) from lingB where kucun.名称=lingB.名称 ) as 利润
from lingB,kucun
where lingB.名称=kucun.名称
总提示 在包含外部引用的被聚合表达式中指定了多个列。如果被聚合的表达式包含外部引用,那么该外部引用就必须是该表达式中所引用的唯一的一列。
哪里不对啊?
select 利润 =(select sum((lingB.单价-kucun.进价)*lingB.数量)
from lingB where t.名称=名称 )
from kucun t
select
(select sum((lingB.单价-kucun.进价)*lingB.数量) from lingB where kucun.名称=lingB.名称 ) as 利润
from lingB,kucun
where lingB.名称=kucun.名称
GROUP BY lingB.名称,kucun.名称
(select sum((lingB.单价-kucun.进价)*lingB.数量) from lingB where kucun.名称=lingB.名称 group by kucun.名称 ) as 利润
from lingB,kucun
where lingB.名称=kucun.名称
(select sum((lingB.单价-kucun.进价)*lingB.数量) from lingB where kucun.名称=lingB.名称 group by kucun.名称 ) as 利润
from lingB,kucun
where lingB.名称=kucun.名称
select 利润 =(select sum((lingB.单价-kucun.进价)*lingB.数量) from lingB where kucun.名称=lingB.名称)
from lingB where t.名称=名称 )
from kucun t
后出现3个利润 但并没分开 而是累加到了一起
guguda2008 该怎么写别名 让SQL识别 而不出现错误呢
谢谢大家
from lingB,kucun
where lingB.名称=kucun.名称这样不行???
from lingB,kucun
where lingB.名称=kucun.名称 GROUP BY 表.ID
你在后面加个GROUP BY ID就好了,两个表都有ID??
我用另外一个实现了 select lingA.id,lingA.日期,
lingB.名称,lingB.数量,lingB.单价,kucun.进价*lingB.数量 as 成本
from lingA,lingB,kucun
where lingA.id=lingB.Aid and lingB.Aid=kucun.id
order by lingA.id
compute sum(kucun.进价*lingB.数量) by lingA.id 执行结果为 请问有什么办法 让下面的sum放到上面的表后面为“利润总和”列呢?
效果图: 需要把SUM放到上表 为“利润总额”列 谢谢了~