2014-11-06 123 views
0

如何将我的结果总计为一条记录而不是item_id的多个实例。相反,我需要为每件商品开具总数量的发票。如何总计SQL结果

查询结果 http://i.imgur.com/uakv7e5.jpg

select 
inv_mast.default_product_group, 
inv_mast.item_id, 
inv_mast.item_desc,oe_hdr.order_date, 
oe_line.qty_invoiced, 
oe_line.extended_price 

from 
job_price_hdr 

join oe_hdr on oe_hdr.job_price_hdr_uid = job_price_hdr.job_price_hdr_uid 
join oe_line on oe_line.order_no = oe_hdr.order_no 
join inv_mast on inv_mast.inv_mast_uid = oe_line.inv_mast_uid 

where 
oe_line.qty_invoiced> 0 
and 
oe_hdr.customer_id = 100080 
and 
default_product_group = 'FAST' 

order by 
inv_mast.item_id 
+0

SQL有一个sum()函数。你知道如何使用它吗? – 2014-11-06 17:08:07

+0

只是学习它。 – eggwhites 2014-11-06 17:12:25

回答

1

试试这个,让我知道如果你需要更多的信息

select 
    inv_mast.item_id,SUM(oe_line.qty_invoiced) 
    from 
    job_price_hdr 

    join oe_hdr on oe_hdr.job_price_hdr_uid = job_price_hdr.job_price_hdr_uid 
    join oe_line on oe_line.order_no = oe_hdr.order_no 
    join inv_mast on inv_mast.inv_mast_uid = oe_line.inv_mast_uid 

    where 
    oe_line.qty_invoiced> 0 
    and 
    oe_hdr.customer_id = 100080 
    and 
    default_product_group = 'FAST' 
    GROUP BY inv_mast.item_id 
    order by 
    inv_mast.item_id 
+0

谢谢Leandro .... – 2014-11-06 17:11:08

+0

当我将列添加回select部分时,它会出错,因为选择列表中的这些列不在Agg函数或group by子句中。当我将它们添加到组中时,它会再次返回每条记录,但是这次总数为 – eggwhites 2014-11-06 17:19:06

+0

现在工作正常吗? – 2014-11-06 17:21:24