• 締切済み

アクセス2010、クエリーで2つの期間を比較する

アクセスデータベース(テーブル→クエリ)について 現在アクセスデータベースを作成し始めておりますが、 その際に問題点(テーブル→クエリ作成)が出てきた為、 作業が前に進みません。 下記にどの様な状態で、どうしたいのかを明記いたしますので、 ご回答を頂ければと思います。 (現状のテーブル例) 店舗名   日付    種別   11時販売数  15時販売数  20時販売数 A店   2011/1/24  ドリンク     5         6         7 A店   2011/1/24  パン       8        10         11 A店   2011/1/24  デザート    10        11         12 A店   2011/1/24  おにぎり    20        30         40 A店   2011/1/25  ドリンク     6         7         8  A店   2011/1/25  パン       10        12         14 A店   2011/1/25  デザート    15        15         20 A店   2011/1/25  おにぎり    25        25         40 B店   2011/1/24  ドリンク     7         8         9 B店   2011/1/24  パン      10        12         15 B店   2011/1/24  デザート    15        18         20 B店   2011/1/24  おにぎり    25        35         45 B店   2011/1/25  ドリンク     8         9         10  B店   2011/1/25  パン       15        20         25 B店   2011/1/25  デザート    25        25         30 B店   2011/1/25  おにぎり    30        30         45 ※上記はA店・B店の2日間を明記しておりますが、実際には数ヵ月間の日別データが 蓄積されています。 ■上記テーブルをクエリにより任意期間A(2011/1/24~2011/1/25)と任意期間B(2011/1/31~2011/1)を比較できるように平均販売数を抽出して、下記のように表記したいと考えております。 店舗名   日付    種別   11時販売数   15時販売数   20時販売数 A店  =任意期間A  ドリンク  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間B  ドリンク  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間A  パン    =平均販売数  =平均販売数  =平均販売数 A店  =任意期間B  パン  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間A  デザート  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間B  デザート  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間A  おにぎり  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間B  おにぎり  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間A  ドリンク  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間B  ドリンク  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間A  パン    =平均販売数  =平均販売数  =平均販売数 B店  =任意期間B  パン  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間A  デザート  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間B  デザート  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間A  おにぎり  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間B  おにぎり  =平均販売数  =平均販売数  =平均販売数 上手くご説明できていない点もあるかと思いますが、 ご返答、宜しくお願いいたします。 ※SQLでの場合は、出来れば詳しくご説明頂ければと思います。 宜しくお願いします。

みんなの回答

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

クエリのデザインビューでは、テーブル名を tbl とした時に   フィールド 店舗名  日付    種別   11時販売数 15時販売数 20時販売数 テーブル  tbl    tbl     tbl   tbl     tbl    tbl 集計   グループ化 where条件 グループ化 平均    平均    平均 並べ替え 表示     レ          レ    レ     レ     レ  抽出条件      between #2011/1/1# and #2011/1/15# または       between #2011/2/1# and #2012/2/15# などのようにしてください。 ※『抽出条件・または』は日付フィールドの所です。 レイアウトが崩れて見にくかったらメモ帳などにコピペして等幅フォントで見てください。 蛇足ですが、月単位での比較なら フィールド 店舗名  年:year([日付]) 月:year([日付])  種別   11時販売数 15時販売数 20時販売数 テーブル  tbl                      tbl   tbl     tbl    tbl 集計   グループ化 グループ化    グループ化  グループ化  平均    平均    平均 並べ替え 表示     レ      レ        レ      レ    レ     レ     レ  抽出条件         2011        1 または          2011        2 のようにすれば2011年の1月と2月の比較が出来ますし 抽出条件         2011        1 または          2012        1 なら前年同月の比較になります。

関連するQ&A

  • アクセスデータベース(テーブル→クエリ)について

    現在アクセスデータベースを作成し始めておりますが、 その際に問題点(テーブル→クエリ作成)が出てきた為、 作業が前に進みません。 下記にどの様な状態で、どうしたいのかを明記いたしますので、 ご回答を頂ければと思います。 (現状のテーブル例) 店舗名   日付    種別   11時販売数  15時販売数  20時販売数 A店   2011/1/24  ドリンク     5         6         7 A店   2011/1/24  パン       8        10         11 A店   2011/1/24  デザート    10        11         12 A店   2011/1/24  おにぎり    20        30         40 A店   2011/1/25  ドリンク     6         7         8  A店   2011/1/25  パン       10        12         14 A店   2011/1/25  デザート    15        15         20 A店   2011/1/25  おにぎり    25        25         40 B店   2011/1/24  ドリンク     7         8         9 B店   2011/1/24  パン      10        12         15 B店   2011/1/24  デザート    15        18         20 B店   2011/1/24  おにぎり    25        35         45 B店   2011/1/25  ドリンク     8         9         10  B店   2011/1/25  パン       15        20         25 B店   2011/1/25  デザート    25        25         30 B店   2011/1/25  おにぎり    30        30         45 ※上記はA店・B店の2日間を明記しておりますが、実際には数ヵ月間の日別データが 蓄積されています。 ■上記テーブルをクエリにより任意期間(例=2011/1/24~2011/1/25)の 平均販売数を抽出して、下記のように表記したいと考えております。 店舗名   日付    種別   11時販売数   15時販売数   20時販売数 A店  =任意期間  ドリンク  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間  パン    =平均販売数  =平均販売数  =平均販売数 A店  =任意期間  デザート  =平均販売数  =平均販売数  =平均販売数 A店  =任意期間  おにぎり  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間  ドリンク  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間  パン    =平均販売数  =平均販売数  =平均販売数 B店  =任意期間  デザート  =平均販売数  =平均販売数  =平均販売数 B店  =任意期間  おにぎり  =平均販売数  =平均販売数  =平均販売数 上手くご説明できていない点もあるかと思いますが、 ご返答、宜しくお願いいたします。 ※SQLでのご返答の場合は初心者なので、出来れば詳しく ご説明頂ければと思います。

  • マイクロソフトアクセス クエリについて

    現在マイクロソフトアクセス2010を使用しています。 下記にどの様な状態で、どうしたいのかを明記いたしますので、 ご回答を頂ければと思います。 (現状のテーブル例) 店舗名   日付    種別   11時販売数  15時販売数  20時販売数 A店   2011/1/24  ドリンク     5         6         7 A店   2011/1/24  パン       8        10         11 A店   2011/1/24  デザート    10        11         12 A店   2011/1/24  おにぎり    20        30         40 A店   2011/1/25  ドリンク     6         7         8  A店   2011/1/25  パン       10        12         14 A店   2011/1/25  デザート    15        15         20 A店   2011/1/25  おにぎり    25        25         40 B店   2011/1/24  ドリンク     7         8         9 B店   2011/1/24  パン      10        12         15 B店   2011/1/24  デザート    15        18         20 B店   2011/1/24  おにぎり    25        35         45 B店   2011/1/25  ドリンク     8         9         10  B店   2011/1/25  パン       15        20         25 B店   2011/1/25  デザート    25        25         30 B店   2011/1/25  おにぎり    30        30         45 ※上記はA店・B店の2日間を明記しておりますが、実際には多数の店舗、数ヵ月間の日別データが 蓄積されています。 任意の期間で各店舗の各商品の時間別の平均販売数を抽出しております。 平均値を抽出する際にクエリ実行時に Between [抽出開始日] And [抽出終了日] と条件を指定しています。 この条件をカレンダーを表示させて 抽出範囲を指定するにはどのようにすればよいのでしょうか? よろしくお願いします。

  • アクセス クエリによる合計・平均値の表示方法

    アクセス クエリによる合計・平均値の表示方法についてご質問いたします。 まったくの初心者ですので、宜しくお願いいたします。 各テーブルから任意の期間をクエリを利用して表示させた時に、その期間の合計・平均値を 表示したいと考えております。 現在作成したクエリでは、任意期間のすべてのデータが表示されてしまいます。 (現状のクエリ=1月10日~11日) 種別    日付      曜日   店名   人数A   人数B   人数C ドリンク  2012/01/10  火    A店     10     10     40 ドリンク  2012/01/11  水    A店     10     10     40 ドリンク  2012/01/10  火    B店     15     15     30 ドリンク  2012/01/11  水    B店     15     15     30 (表示させたいクエリ=1月10日~11日平均) 種別    日付                曜日   店名   人数A   人数B   人数C ドリンク  2012/01/10~2012/01/11  非表示    A店     10     10     40 ドリンク  2012/01/10~2012/01/11  非表示    B店     15     15     30 全体集計                                合計25  合計25  合計70 上手く伝わらないかもしれませんが、上記のように表示させたいと考えております。 是非とも皆様のアドバイスを頂きたいと思いますので、宜しくお願いいたします。     

  • Accessのクエリで2

    お伺い致します。 テーブル名:テーブルA  フィールド:月日,販売先,品番 テーブル名:テーブル期間  フィールド:分類、始月日、終月日 テーブル名:材料テーブル  フィールド:品番,材料1,材料2, 分類 の3テーブルが有り ”テーブルA”の月日の違いで”テーブル期間”の分類を表示させた後 現在品番と分類で材料1、材料2の使用量をクエリで以下のように表示 クエリ名:Q_テーブルA 月日,販売先,品番, 材料1, 材料2 0501,東京販売,18-18, 270, 180...材料の使用量は月日と品番で決まる、 1105,仙台販売,18-21, 290, 190 0801,大阪販売,21-21, 300, 190 0907,東京販売,27-18, 350, 175  ここでお伺いしたい事は 材料テーブルの事ですが実際は品番が30種類、材料が10種類の300データに及び それに期間による材料テーブル1と2の2種類あります 各々の表はエクセルで計算させインポートさせた後ユニオンクエリで一緒にし テーブル作成クエリで”材料テーブル”を作成するという事をしていますが。 そのまま、テーブル1とテーブル2を月日の違いによる分類1,2でスイッチさせて クエリ”Q_テーブルA”を作成する方法が有りませんでしょうか 簡単に出来ると思いつつも良い方法が浮かばず回り道しています。 よろしくお願い致します。

  • Access クエリについて

    Accessのテーブル1に、フィールド「コード」「回数」があり、レコードとして A,32 B,20 C,13 ・・・というように、ランダムなコードと回数がセットされているとします。コードは主キーです。 このテーブル1を元にしたクエリで A,1 A,2 A,3 ・・・ A,32 B,1 B,2 ・・・ B,20 C,1 C,2 ・・・ C,13 というように、コードごとに「回数」と同じ数のレコードがクエリ上に生成されるようにしたいのですが、こういうことは出来るのでしょうか?出来ればSQLで回答いただけないでしょうか。

  • アクセス2010 N:Nのマッチングクエリ

    アクセス初心者です。 テーブルAとテーブルBのマッチングで両テーブルでマッチしないデータも 表示させたい場合、どのようなクエリにすればよろしいですか? テーブルA全件、テーブルB全件 → クエリ表示(マッチするデータは1件で表示) 例 ■テーブルA CD 数 010 1 020 5 030 3 ■テーブルB CD 数 020 7 030 6 040 2 □クエリ CD 数 010 1 020 12 030 9 040 2 よろしくお願いします。

  • accessのクエリについて

    テーブル1のフィールド ・品番 ・期間 ・生産数 テーブル2のフィールド ・品番 ・期間 ・使用数 上記のようなテーブルをもとに、品番と期間が一致した場合に生産数 - 使用数 を表示出来るようなクエリは作成できますでしょうか? 出来るなら,どのようにすればよいでしょうか? おわかりになられる方がいらっしゃいましたらご教授お願い致します。

  • アクセス テーブル、クエリーについて

     アクセスでソフト作成中です。そこで教えてほしいことがあります。 たとえば下記のように2つのテーブルがあります。 テーブル1   テーブル2   フィールドA    フィールドB  a1       10  b1       20  c1       30          テーブル1の数値は固定します。そこで下記のようなクエリーを作成したいのです。 クエリー1 フィールドA フィールドB a1 10 b1 20 c1 30 テーブル2に数字を入れていくと テーブル1   テーブル2   フィールドA    フィールドB  a1       10  b1       20  c1       30           40 クエリー1 フィールドA フィールドB a1 40 b1 20 c1 30 このように数字が上書きされていくようなクエリーは作成できないでしょうか。(あくまでテーブル1の数値は固定、フィールドAとフィールドBにリレーションシップは設定されていない。) よろしくおねがいします。

  • アクセスのクエリーについて

     アクセス初心者です。  例えばテーブル1に以下のようなデータがあります。  A     鈴木  佐藤  もう1つテーブル2があります  B  1  2 そこでクエリーを作成し テーブル1とテーブル2の列を1つにまとめます。この時テーブル1とテーブル2に関連性はなく、リレーションシップはつけません。そうすると A  B  鈴木 1 鈴木 2 佐藤 1 佐藤 2 となります。 イメージ的に A  B 鈴木 1 佐藤 2 というように単純に列をつけたいのです。エクセルなら簡単に出来ますがアクセスでは出来ないでしょうか。

  • Access2010「クエリが複雑すぎます」

    お世話になります。 ユニオンクエリAがあり、そのクエリを使用してクエリB(テーブルや別のクエリとも紐付け)を作成しました。問題なく抽出できます。  <クエリB>  ユニオンクエリA ----→ クエリX              |               ---→ テーブル1              |               ---→ テーブル2              |               ---→ テーブル3 新たにユニオンクエリAを使って、クエリCを作成したところ「クエリが複雑すぎます」と表示されてしまいます。いくつかのテーブル/クエリと紐付けていたので、一つずつ取っていったところ、最終的にはユニオンクエリA一つでもエラーが出てしまいます。単純な選択クエリです。 クエリBは同じユニオンクエリAを使い、複数のクエリとテーブルとを紐付けているのにも関わらずエラーとなりません。。 どのようなことが考えられますでしょうか。 Accessを起動し直したり、端末自体も再起動しましたが状況変わらずでした。 また、ユニオンクエリA単体を開いても問題無く抽出されます。 ご教授の程、宜しくお願い致します。

専門家に質問してみよう