hatena
hatena
2021/01/11 (月) 12:14:30
また、かなり可能性が低いですが、生産が止まった月があった場合、列も表示されません。
これは対処できるのでしょうか?
これに対応するには、出力したいすべての年月を格納するテーブルが必要になりますね。
下記のようなテーブルを作成してください。
テーブル名 MT_年月
年月
2020年01月
2020年02月
2020年03月
2020年04月
一つのクエリでは難しいので、複数のクエリを組み合わせて目的に出力になるようにしていきます。
Q_商品_年月
SELECT MT_商品.商品ID, MT_年月.年月
FROM MT_商品, MT_年月;
このクエリですべての商品IDと年月の組み合わせが出力できます。
Q_商品年月別計
SSELECT
T_生産.商品ID,
Format([生産日],"yyyy\年mm\月") AS 年月,
Sum(T_生産.生産量) AS 生産量計
FROM T_生産
GROUP BY T_生産.商品ID, Format([生産日],"yyyy\年mm\月");
このクエリで、商品別年月別の生産量の合計が出力できます。
上記の2つのクエリから下記のようなクロス集計クエリを作成します。
CQ_商品年月別
TRANSFORM Nz(First([生産量計]),0) AS 値
SELECT Q_商品_年月.商品ID
FROM
Q_商品_年月 LEFT JOIN Q_商品年月別計
ON (Q_商品_年月.年月 = Q_商品年月別計.年月) AND (Q_商品_年月.商品ID = Q_商品年月別計.商品ID)
GROUP BY Q_商品_年月.商品ID
PIVOT Q_商品_年月.年月;
これでご希望の結果になると思います。
通報 ...