sql语句难题:一个1对多的统计
统计原始订单表和供应商订单表的总额按照供应商归类统计总和,以订单号为关联
两个表,1对N, 原始订单表[order_in] 零部件供应订单表[order_out]
order_in 结构
------------------------
order_id
qty_in
date_in
总额
order_out 结构
------------------------
order_id
供应商id
总额
date_out
------------------------
目前的错误SQL写法
select order_in.order_id,sum(order_in.总额) as ttlin, sum(order_out.总额) as ttlout from order_in ,order_out where order_in.order_id=order_out.order_id group by order_out.供应商id
目的就是统计各供应商订单的利润情况,
看是正确,但问题出现了,order_in的总额会多次累加,因1对N的关系,造成ttlin总数不准,order_out反而是准确的。
两个表,1对N, 原始订单表[order_in] 零部件供应订单表[order_out]
order_in 结构
------------------------
order_id
qty_in
date_in
总额
order_out 结构
------------------------
order_id
供应商id
总额
date_out
------------------------
目前的错误SQL写法
select order_in.order_id,sum(order_in.总额) as ttlin, sum(order_out.总额) as ttlout from order_in ,order_out where order_in.order_id=order_out.order_id group by order_out.供应商id
目的就是统计各供应商订单的利润情况,
看是正确,但问题出现了,order_in的总额会多次累加,因1对N的关系,造成ttlin总数不准,order_out反而是准确的。
...全文
相关推荐
一个常用的报表统计SQL语句
在平常的系统开发中,我们经常会遇到类似下图的报表统计功能需求。
一个用来统计相同姓名人数的SQl语句
sql语句查询 表结构是这样: ID 姓名 性别 1 张三 男 2 王四 男 3 丽丽 女 4 张三 男 5 赵柳 男 6 高洁 男 7 王四 女 8 高洁 女 9 张三 女 怎么能用一条SQL语句查询出如下的结果 姓名 人员个数 男人数 女人数 包含ID 张三 3 2 1 1,4,9 王四 2 1 1 2,7 丽丽 1 0 1 3 高洁 2 1 1 6,8 赵柳 1 1 0 5 代码如下: SELECT * FROM (SELECT DISTINCT Name,Count(ID) as 人員個數, sum(case when Sex=’男’ then 1 else 0 end) as 男人
SQL语句技巧:按月统计数据
SQL语句技巧:按月统计数据
SQL一条语句统计记录总数及各状态数
主要为大家介绍了SQL一条语句统计记录总数及各状态数的sql语句,需要的朋友可以参考下
sql多表关联语句
sql server 数据库 多表关联查询语句



