• ベストアンサー

クロス集計クエリ

こんなデータテーブルがあります、選択クエリ後、クロス集計クエリで (結果)のような表示をしたい、可能でしょうか?ご教授下さい A社  テレビ   A-TV-1 A社  冷蔵庫   A-R-1 A社  エアコン  A-R-1 B社  テレビ   B-TV-2 B社  エアコン  B-BB-1 B社  冷蔵庫   E-E1-1-3   クロス集計クエリ結果       テレビ    冷蔵庫      エアコン A社   A-TV-1    A-R-1      A-R-1 B社   B-TV-2    E-E1-1-3    B-BB-1

質問者が選んだベストアンサー

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

テーブル名を「TQ」 フィールド名を左から「F1」「F2」「F3」と仮定した場合 クエリのSQLビューで以下を記述します。 TRANSFORM First(F3) AS 値 SELECT F1 FROM TQ GROUP BY F1 PIVOT F2; デザインビューに変更し、どのような設定になっているか確認します。 データシートビューにすると、以下のようになると思います。 F1   エアコン  テレビ  冷蔵庫 A社   A-R-1   A-TV-1   A-R-1 B社   B-BB-1  B-TV-2   E-E1-1-3 列の並び順は F2 での文字の昇順になったと思います。なので、 > テレビ    冷蔵庫      エアコン の並び順にするには、 ・そのクエリを表示した時だけでよければ  データシートビューで表示後、フィールドを移動し、閉じる時に保存します。 ・レコードセット等でも並びが変わっていて欲しい場合  デザインビューのプロパティ「クエリ列見出し」で設定します。  すると、SQLビューで見た際の最終行が以下のように設定されます。 PIVOT F2 In ("テレビ","冷蔵庫","エアコン"); ただ、列見出しを固定してしまうと、F2 に「洗濯機」を追加しても クロス集計では対象外になってしまいます。 > 選択クエリ後、クロス集計クエリで とのことなので、 上記テーブル名のところをクエリ名に変更して、どうなりますか。

okamoto6855
質問者

お礼

大変遅くなりました、ありがとうございました。

関連するQ&A