ACCESSのデータ処理について教えて下さい。
商品番号に相当する最安と最新の価格情報を抽出するには、どの様にしたらよいのでしょう?
クエリ1:
商品番号 価格 日付
ABCDE 150 2009/03/01
ABCDE 100 2010/03/01
BCDEF 300 2009/03/01
の様に商品番号に相当する価格情報と日付の情報を参照可能。
1つの番号に複数の価格情報が登録されている事が多いです。
この価格情報の元テーブルはODBC接続された環境下にあります。(ODBCの詳細は分かりません。)
このデータを元に
商品番号を参照して、最安価格と最新価格を参照するにはどの様にしたらよいでしょう?
下記の様なデータで整理したいのです。
商品番号 最安価格 最安日 最新価格 最新日
ABCDE 100 2009/03/01 150 2010/03/01
BCDEF 300 2009/03/01 300 2010/03/01
XXXXX
クエリ1に存在しない商品番号に相当する価格情報等のフィールドは空欄
ACCESSは全くの初心者で、アドバイスいただきたく。
No.1ベストアンサー
- 回答日時:
ご質問のクエリ1から続けて以下のような処理を行います。
ポイントは”集計”です。
最安値=商品番号ごとの価格の最小値
最新日=商品番号ごとの日付の最大値
であることを踏まえて読み進めてください。
1-1 最低値を求めるクエリ(クエリ1-1とします。)
クエリ1から以下の2つのフィールドのみを選択します。
アクセスの集計機能をONにして以下のクエリを作ります。
| 商品番号 | 価格
| グループ化 | 最小値
※上記で「商品番号ごとの最安価格」が抽出できます
1-2 上記のクエリ1-1と質問文のクエリ1をマッチング(結合)します。さらにアクセスの集計機能をONにします。
クエリ1 クエリ1-1
商品番号----商品番号
価格 ----価格の最小値
日付
|商品番号 |価格の最小値 |日付 |
|クエリ1 |クエリ1-1 |クエリ1-1 |
|グループ化|グループ化 |最大値(又は最小値)|
※上記で「クエリ2(商品番号の最安価格)と同じ価格のときの日付」を取得できます。なおクエリ1に同じ商品番号で同じ価格のデータが2つ以上あると結果がダブるので、”集計”を利用しています
これで完成形の左半分ができるはずです
以降同様に「集計」を利用し、
2-1:商品番号をグループ化し、日付の最大を求めるクエリ作成
2-2:クエリ1と2-1のクエリで商品番号と日付を結合 商品番号、日付、価格 の3つのフィールドを選択します。
これで完成形の右半分ができるはずです
3-1:商品番号(や商品名)をグループ化したクエリAを作成します。
最後は今までの3つの表を”商品番号”で結合し、完成形にします。
クエリ1-2 クエリ3-1 クエリ3-1
商品番号-----商品番号----商品番号
価格の最小 商品名 日付の最大
最安日の・・ : 最新価格の・・
|商品番号|最安値|最安日|最新価格|最新日|
|3-1 |1-2 |1-2 |2-2 |2-2 |
以上長文ですがお試しください。
この回答への補足
調べたところ、ACCESSでは順番が変わることがやむをえないとのことが情報として掲載されていたので、IDの前に番号のフィールドを設けて、昇順に並べることでうまくいきました。ありがとうございました。
補足日時:2010/03/18 17:31回答ありがとうございました。
目的のデータ構成としては達成できたのですが、順番が商品番号の昇順で並べ替えられてしまいます。
順番は変更しない様にできないでしょうか?
商品番号とは別にID(番号)が存在し、このIDの順番を変更すると構成がおかしくなってしまうのです。
”3-1:商品番号(や商品名)をグループ化したクエリA”
の段階で並べ替えられてしまいます。
P.S
ちなみに下記の一番右のクエリ3-1はクエリ2-2でしたね。
クエリ1-2 クエリ3-1 クエリ3-1(クエリ2-2)
商品番号-----商品番号----商品番号
価格の最小 商品名 日付の最大
最安日の・・ : 最新価格の・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel関数 情報引用する方法 4 2022/07/31 20:59
- Visual Basic(VBA) VBAで最新のデータを別シートに転記する方法をお教えください。 3 2022/04/07 19:20
- Visual Basic(VBA) EXCEL関数LOOKUPとFILTERについての質問です 1 2022/12/21 05:53
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- その他(買い物・ショッピング) 商品に印字してあるバーコードについて 3 2022/08/26 10:42
- 国産バイク 大型バイク カワサキz900rsに付ける ヨシムラのマフラーの質問です、 【 商 品 I D 】14 2 2023/06/27 13:43
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
- ノートパソコン 【16インチまたは17インチノートパソコン】で1番定価が高いのに販売価格が下落してい 3 2023/08/20 11:38
- ヤフオク! ヤフオク。入札価格が安すぎるから、ということで出品者都合でキャンセルするのはアリなのか? 5 2022/10/14 16:40
- その他(ネットショッピング・通販・ECサイト) 11月1日に中国サイトで品物を購入しました私は何度もメールしていて4日に発送するとメールがあり5日の 6 2022/11/08 10:24
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスのエラー「クエリには...
-
EXCELの外部データ取得ができない
-
Access複数のクエリをExcelの1...
-
Access 複数のクエリの結果を...
-
Access:クエリの集計でグループ...
-
Accessで進行状況インジケータ...
-
yes/no型のチェックができない...
-
ACCESSのフィールドの表示順が...
-
ACCESSでメッセージにクエリ結...
-
AccessでSQL結果を直接csvに書...
-
Accessのエラーについてです。
-
Me.FilterOn = True は先でも後で
-
ログイン画面後のページの表取...
-
パススルークエリからデータシ...
-
Accessで複数(200件程)の置換
-
DoCmd.RunSQL "DROP Query
-
Accessでユニオンクエリを作成...
-
差込印刷での全角表示について...
-
日付型のフィールドに空白を入...
-
SQL文で パラメータが少なすぎ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスのエラー「クエリには...
-
EXCELの外部データ取得ができない
-
access追加クエリ実行時の重複...
-
yes/no型のチェックができない...
-
ACCESSのフィールドの表示順が...
-
Access 複数のクエリの結果を...
-
AccessでSQL結果を直接csvに書...
-
Access2000で抽出したデータに...
-
アクセスで空白がグループ化さ...
-
Accessでユニオンクエリを作成...
-
ログイン画面後のページの表取...
-
Accessで複数(200件程)の置換
-
Me.FilterOn = True は先でも後で
-
Access複数のクエリをExcelの1...
-
アクセスのフォーム単票形式の...
-
Access 特定の条件下で、メッ...
-
Accessで進行状況インジケータ...
-
Accessのエラーについてです。
-
ACCESSでメッセージにクエリ結...
-
【Access2003 VBA】クエリをエ...
おすすめ情報