これ何て呼びますか

ACCESS2010で テーブル 入金、テーブル 出金 を作成して1年(毎月)の集計をしていますが、どちらかのテーブルにデータがないと、集計表にした時、データがない月が表示できません。いまはデータがない月に、(0)を入れています。(0)を入れなく出来ないものでしょうか。

A 回答 (3件)

他の方の回答のように年月マスターを作成しておいて外部結合するというのがいいでしょうね。




年月マスター テーブル
年月      フィールド
201401
201402
201403
201404


それを作らずにするなら、入金、出金の2つのテーブルをユニオンクエリで結合してからそれを集計クエリにすればいいでしょう。


Q_入出金
SELECT Format(日付,"yyyymm") AS 年月, 科目コード, 入金額, 0 As 出金額 FROM 入金
UNION ALL
SELECT Format(日付,"yyyymm") AS 年月, 科目コード, 0 As 入金額, 出金額 FROM 出金;


このクエリを基に集計クエリを作成。

SELECT 年月, 科目コード, Sum(入金額) As 入金計 , Sum(出金額) As 出金計
FROM Q_入出金
GROUP BY 年月, 科目コード;
    • good
    • 0
この回答へのお礼

集計クエリではできないことはわかりました。SQLを勉強してユニオンクエリに挑戦します。

お礼日時:2014/05/27 08:00

集計月を正規化して別テーブルにつくっておいてouter joinするとか・・・


結局なんらかのデータがなければ表示できないですからね
    • good
    • 0

ブランクでよいなら、年月のみのテーブルを作り集計クエリをleft join させるとか、


ゼロを入れたいなら、0でレコードを一件作っておくとか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す