显示一栏的总数量

Show total quantity for one column

我正在寻找可以让我在一行中显示不同交易的总结果的正确查询。

我的查询如下

select

porch.jspo# as PO,
porch.jslin# as Line,
porch.jsqtyr as QTY,
sum(porch.JSQTYR) over (partition by porch.JSPO#) as TotalQty

from PORCH

where JSPO# = '109394'
and JSPLNT = 'GC'

group by JSPO#, JSLIN#, JSQTYR

结果

 PO     LN    QTY        TotalTy
109394  1   9.00000     1774.00000
109394  1   20.00000    1774.00000
109394  1   125.00000   1774.00000
109394  1   400.00000   1774.00000
109394  1   1220.00000  1774.00000

我正在寻找一个查询,它将 QTY 下的所有交易相加并显示如下结果。

     PO     LN    QTY        
    109394  1  1774.00000

那么,就不需要window函数了。只需从 selectgroup by 子句中删除数量,并使用简单聚合:

select jspo# as po, jslin# as line, sum(jsqtyr) as qty
from porch
where jspo# = '109394' and jsplnt = 'GC'
group by jspo#, jslin#

您应该只聚合您希望在结果集中唯一的列。所以:

select porch.jspo# as PO, porch.jslin# as Line,
       sum(porch.JSQTYR) as TotalQty
from PORCH
where JSPO# = '109394' and JSPLNT = 'GC'
group by JSPO#, JSLIN#;

我不确定你为什么要为此目的尝试累积总和。