#78 今年の商品別売上金額を販売履歴テーブルに追加する



テーブル"tbl販売履歴"には、毎年度末の商品別の売上金額が保存されています。このようなデータは、売上やその明細のテーブルをクエリで集計することによって求めることもできますが、年度末の締め処理でデータが確定する(その後一切変更しない)ような場合には、単独のテーブルにすることによって分析などの加工が楽になったり、集計処理を速くしたりすることができます。

ここでは、追加クエリを使って、今年度の売上データを集計してこのテーブルに追加します。

今年度の売上データを集計するクエリは、「#54 年月別・商品別の売上金額を集計する」で作ったクエリを加工することによって作成できます。#54では年月別としていますが、ここでは月の単位までは不要ですので、「売上年: Format$([売上日付],"yyyy")」という演算フィールドを「年度: Format$([売上日付],"yyyy")」というように書き換えます。そして、この演算フィールドの抽出条件を「2002」のようにすれば2002年度のデータだけを取り出すことができます。

※Format$関数ではなく、日付から年だけを取り出すYear関数も使えます。→年度: Year([売上日付])
※年度が1月1日以外から始まる場合は、単純に「売上日付」の抽出条件を「Between #2001/04/01# And #2002/03/31#」というようにすることもできます。


最後に、このクエリを「追加クエリ」に変更して、追加先テーブルを"tbl販売履歴"に設定します。今回の場合、クエリ上のフィールド名と追加先テーブルのフィールド名が一致しているので、自動的に「レコードの追加」欄に追加先フィールド名が設定されます。


デザインビュー


INSERT INTO tbl販売履歴 ( 年度, 商品コード, 売上金額 )
SELECT Format$([売上日付],"yyyy") AS 年度, tbl売上伝票明細.商品コード, Sum([数量]*[販売単価]) AS 売上金額
FROM (tbl売上伝票 INNER JOIN tbl売上伝票明細 ON tbl売上伝票.伝票番号 = tbl売上伝票明細.伝票番号) INNER JOIN mtbl商品マスタ ON tbl売上伝票明細.商品コード = mtbl商品マスタ.商品コード
GROUP BY Format$([売上日付],"yyyy"), tbl売上伝票明細.商品コード, mtbl商品マスタ.商品名
HAVING (((Format$([売上日付],"yyyy"))=2002))
ORDER BY Format$([売上日付],"yyyy");



データシートビュー

| Index | Prev | Next |

 

"16" border="0" hspace="5" vspace="2">
Copyright © T'sWare All rights reserved