问题描述
- 有关SQL的一个错误,来人帮忙看看吧
-
select ( sum( s.price
* s.num
) + sum( o.freight
) ) as total
from pro_sold as s, pro_order as o,sys_merchant as m
where s.store_id
=m.id
=o.store_id
group by s.store_id
水平有限,实在没看出问题在哪里。
简单描述一下,查询出来的数字实在是超出我的心理极限呀。
太大了!
这是哪里出问题了?
解决方案
这没人帮你,sql语句本身语法没错,建议你检查你的数据是否正确,可以先不要求和,把符合条件的记录select处理,看看是不是这些数据
解决方案二:
select store_id,sum(total) as total
(select s.store_id, (s.price * s.num) as total
from pro_sold as s,sys_merchant as m
where s.store_id=m.id
group by s.store_id
union all
select o.store_id, o.freight as total
from pro_order as o,sys_merchant as m
where m.id=o.store_id
group by o.store_id
) a
group by store_id
解决方案三:
select ( sum( s.price * s.num ) + sum( o.freight ) ) as total
from pro_sold as s, pro_order as o,sys_merchant as m
where s.store_id=m.id And m.id=o.store_id=o.store_id
group by s.store_id
应该是少了一个And的问题。
时间: 2024-09-18 21:21:30