0

簡単にするために、次のような在庫の出入りを示すテーブルがあります。

date,in_out
2013-08-05,+5
2013-08-07,-2
2013-08-12,-1

私がやりたいことは、各日付の在庫数を把握することです。

date,in_out,quantity
2013-08-05,+5,5
2013-08-07,-2,3
2013-08-12,-1,2

しかし、Postgresql をよく知っていたとしても、前の行を考慮に入れる SELECT リクエストの書き方がよくわかりません。

私がやったことはそのようなものです:

SELECT date,in_out, (stock_quant := stock_quant + in_out) AS quantity FROM table_stock;

どんな提案でも大歓迎です!

4

3 に答える 3

1

あなたは実行中の合計を探しています:

select date,
       in_out,
       quantity,
       sum(quantity) over (order by date) as quantity
from  table_stock
order by date;

ところで:date列の恐ろしい名前です。1 つ目は予約語でもあり、2 つ目は列の内容を文書化していません。「開始日」、「終了日」、「変更日」、...

于 2013-08-13T15:12:48.540 に答える
0

これを試して :

SELECT date,in_out, stock_quant + in_out AS quantity 
FROM table_stock;
于 2013-08-13T15:12:34.130 に答える