たとえば、商品の値段をDB化するときに
テレビ 30000
カメラ 20000
ラジカセ 4000
・
・
みたいなテーブルがあったとして、
グループ化を
グループA 9999円以下
グループB 10000円以上19999円以下
グループC 20000円以上49999円以下
グループD 50000円以上
みたいな感じでグループ化して、グループごとの商品数を
クエリで求めたいとした場合、できるだけシンプルに分かりやすく
実現する方法はありますでしょうか?
グループ化の基準を別テーブルで持たせることを考えたのですが、
その後に行き詰ったりしてしまいました。
今のところ4つしかグループはないので、中間クエリを作って、
新規のフィールドに、
iif(price<5000,"グループA",iif(price<10000,"グループB",iif...
という感じにして、そのクエリを元にクエリを作ればいけるかなーと
思ってますが(未確認)、あまり、キレイじゃないのと、
グループ数が増えるとより見づらくなりそうで、
もうちょっとキレイな方法があればと思ってます。
グループ化の基準は別テーブルで持ちたいですが、持った後が考え付かず、、
いい方法をご存知の方教えてください。
No.1ベストアンサー
- 回答日時:
もう解決されましたか
以下に1つの例を (以下 an はオートナンバー)
商品のテーブル名を「T1」とし、構成が、an, 商品名, 価格 とします。
テーブルサンプル
an 商品名 価格
1 テレビ \30,000
2 カメラ \20,000
3 ラジカセ \4,000
グループのテーブル名を「T2」とし、構成が、an, ランク名, 下限 とします。
テーブルサンプル
an ランク名 下限
1 グループA \0
2 グループB \10,000
3 グループC \20,000
4 グループD \50,000
クエリのSQLビューで、以下を記述(もっといい方法があるかと思いますが)
SELECT (SELECT TOP 1 ランク名 FROM T2 WHERE 下限 <= T1.価格 ORDER BY 下限 DESC) AS グループ, 商品名, 価格 FROM T1;
表示結果が以下
グループ 商品名 価格
グループC テレビ \30,000
グループC カメラ \20,000
グループA ラジカセ \4,000
後は、このクエリをもとに集計するとか・・・
※
(SELECT TOP 1 ランク名 FROM T2 WHERE 下限 <= T1.価格 ORDER BY 下限 DESC) AS グループ
部分は、テーブルT2から、価格以下の下限を降順で並べた時の先頭のランク名を得る
というものになります。
DLookup / DMax を使って置き換えてみると
DLookup("ランク名","T2","下限 = " & DMax("下限","T2","下限 <= " & [価格])) AS グループ
になると思います。
まだ解決しておらず、とりあえずIIF関数でやってました。
TOP1というのは知りませんでした。
これを使えば、グループ情報を他テーブルでもてますね。
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 統計学 処理Aと処理A+Bの2群の差から、AとBの効果や相対的重要性を定量したい 5 2023/02/22 09:42
- Excel(エクセル) excel マクロでグループ内でソートしたい。見出しが上手くいきません。 7 2022/05/22 08:31
- Access(アクセス) お世話になっています いまクエリを作っています。。 デザインビューの画面の集計の欄で、「グループ化」 4 2022/09/17 17:03
- 友達・仲間 友達作りに出遅れました。友達の作り方教えてください 1 2023/05/16 17:36
- その他(ネットショッピング・通販・ECサイト) 夢グループの電熱ヒーターベスト2980円はどうですか 夢グループは例えば他の製品テレビで録画できるの 3 2023/01/10 13:54
- 友達・仲間 好きな人の属してるグループが変わって欲しい 2 2022/04/09 13:02
- 友達・仲間 新高一です。未だにクラスにあまり馴染めていません。 完全にグループが出来てしまっていて、どちらに入れ 3 2022/04/18 16:44
- 友達・仲間 今のグループと距離を置くべきでしょうか? 1 2023/04/26 20:52
- 中学校 Aグループが15人いて、Bグループが15人いた場合 その中で1日に1回ペアを組む場合、10日間で X 1 2023/06/27 21:53
- Excel(エクセル) 指定した数字まで累計する方法や文字例の抽出について教えてください 4 2022/10/05 21:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセス:クエリの結合とリレ...
-
クロス集計クエリの結果をテー...
-
ACCESSで行数指定(5万行目~8...
-
Access2007 クエリが読み取り...
-
アクセスのクエリでSplit関数は...
-
Accessでテキストが合体できる...
-
ACCESS クエリをテーブルとして...
-
クエリのデータをテーブルに入...
-
accessでクエリの結果だけをリ...
-
クエリについて教えてください
-
ACCESSで残高のある請求書作成...
-
アクセス テーブル容量とクエリ...
-
アクセス テーブルデータをエ...
-
アクセス 置換 どちらが早い...
-
ACCESSでの重複レコードの削除
-
Accessでテーブルやクエリのリ...
-
更新不可能なクエリに対して更...
-
テンポラリファイルのための空...
-
Accessで重複していないデータ...
-
日付型のフィールドに空白を入...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
クロス集計クエリの結果をテー...
-
デザインビューにてテーブルが...
-
アクセス 項目毎にデータを横...
-
クエリのデータをテーブルに入...
-
accessでクエリの結果だけをリ...
-
アクセス:クエリの結合とリレ...
-
教えてください! アクセスのac...
-
Access「レコードが削除されま...
-
更新不可能なクエリに対して更...
-
アクセス クロス集計クエリ→テ...
-
アクセスのクエリでSplit関数は...
-
access インポート時、既にある...
-
ACCESSで行数指定(5万行目~8...
-
テンポラリファイルのための空...
-
Access DAOのExecuteメソッドの...
-
ACCESSでの重複レコードの削除
-
Accessのクロス集計→テーブル作...
-
Access2010「クエリが複雑すぎ...
-
access テーブル作成クエリでテ...
-
ACCESS2000 クエリをテーブル化...
おすすめ情報