Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


5851 / 9994 ←次へ | 前へ→

【7355】Re:クエリの作成
回答  小僧  - 06/2/22(水) 11:34 -

引用なし
パスワード
   ▼コマ さん:
こんにちは。

>以上のような条件で入出庫クエリを作成したいのでが上手く出来ません。

まず、テーブルの構成が変更可能でしたら

入出庫テーブル
ID    商品CD    日付         種別   個数
1    aaa    2006/02/01    入庫    100
2    aaa    2006/02/02    出庫     30
3    aaa    2006/02/03    入庫     10
4    aaa    2006/02/03    出庫     5

という形の方が望ましいです。変更が無理なようでしたら、

SELECT 入庫テーブル.商品CD,
    入庫テーブル.入庫日,
    '入庫' AS 種別,
    入庫テーブル.入庫数 AS 個数
FROM 入庫テーブル
UNION ALL
SELECT 出庫テーブル.商品CD,
    出庫テーブル.出庫日,
    '出庫' AS 種別,
    出庫テーブル.出庫数 AS 個数
FROM 出庫テーブル;

上記 SQL をクエリの SQL ビューに記載して、そのクエリを代用して下さい。

日付のフィールドが

>06.02.03   

となっていますが、日付/時刻型のフィールドに変更し
「2006/02/03」とした方が後々の管理が楽になると思われます。


さてここまで準備ができましたら、下記 SQL をクエリの SQL ビューに記載して
結果を確認されてみて下さい。

TRANSFORM Sum(入出庫テーブル.個数) AS 個数の合計
SELECT 入出庫テーブル.商品CD, 入出庫テーブル.日付,
Nz(DSum("個数","入出庫テーブル","種別='入庫' AND 日付 <=#" & 日付 & "#"),0) -
Nz(DSum("個数","入出庫テーブル","種別='出庫' AND 日付 <=#" & 日付 & "#"),0) AS 残高
FROM 入出庫テーブル
GROUP BY 入出庫テーブル.商品CD, 入出庫テーブル.日付,
Nz(DSum("個数","入出庫テーブル","種別='入庫' AND 日付 <=#" & 日付 & "#"),0) -
Nz(DSum("個数","入出庫テーブル","種別='出庫' AND 日付 <=#" & 日付 & "#"),0)
PIVOT 入出庫テーブル.種別;
341 hits

【7350】クエリの作成 コマ 06/2/21(火) 21:25 質問
【7355】Re:クエリの作成 小僧 06/2/22(水) 11:34 回答
【7362】Re:クエリの作成 コマ 06/2/23(木) 10:00 質問
【7367】Re:クエリの作成 小僧 06/2/23(木) 11:42 回答
【7372】Re:クエリの作成 コマ 06/2/23(木) 14:11 お礼

5851 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078229
(SS)C-BOARD v3.8 is Free