1
部品番号、場所、日付で在庫数の表があります。その日に変更が発生した場合は、テーブルにレコードのみが存在します。たとえば、次の各部/ LOCキーについてpostgresqlで変更レコードのみが使用可能な場合の日単位の平均を計算するSQL
part |loc |date |qtyonhand
------+------+----------+---------
10544 | 3012 | 20161116 | 68
10544 | 3012 | 20170403 | 43 <-----
10544 | 3012 | 20170413 | 33 <-----
、Iは 過去3ヶ月にわたって手で平均量を計算する必要があります。 2017年5月以降、2月には、& 4月2017の2つのレコードが表示されます。しかし、私はちょうどCalcはこのようにする必要があり、この部分/ LOCのために2で割った43と33の平均を取ることができない。
20170201 inventory was 68
20170202 inventory was 68
...for each day
20170402 inventory was 68
20170403 inventory was 43
20170404 inventory was 43
...
20170413 inventory was 33
...
20170430 inventory was 33
と私は間の日数によって各日の在庫と除算を合計します2月1日と4月30日。
lag()を使用して日付の差を計算し、在庫レベルで掛けてみましたが、2月1日から値を取得する方法がわかりません前の変更レコードqtyを次の変更レコードを介して返します。
どのようなヒントや方向性も高く評価されています。
私は日ごとに目録のテーブルを作成し、それから平均を集計するあなたの方法は合理的だと思います。 – Degan
質問を編集して、作業中のクエリを表示する必要があります。 –
Degan、新しいエントリーの場合、前の変更数量を含む1日あたりのテーブルの作成方法に関するヒント? – bill