SEOのために、「○○している時、どんなキーワードで検索しますか?」という質問をし、これをテーブルに入力しました。1つのレコードに複数のキーワード(フィールド)があります。
さて、このテーブルにまとめられたアンケート結果を、キーワード別に集計したいのですが、どのようにするのが一番良いでしょうか?
次のような一覧にしたいです。
キーワード 回答数
XXXX 5
YYYY 10
ZZZZ 7
AAAA 9
BBBB 2
1つのレコードに複数のキーワード(フィールド)があります。
そもそもこの構造自体がRDBMS向きではないわけだが。
それはともかく Access 限定なら、ピボット機能が使えると思う。
おそらくこの機能で目的の結果が得られるはず。
クエリの編集画面で、メニュー「表示」-「集計」を押して集計項目をクエリに表示させて
集計を、項目は「グループ化」,もう一つとなりに同じ項目を追加して集計の項目を「カウント」にすれば、項目の数を数えることができます。
http://mail2.nara-edu.ac.jp/~asait/visual_basic/access/part4.htm
UNIONクエリと集計クエリを用いると良いでしょう。
まずはUNIONクエリにて集計しやすく整形します。
回答の入っているテーブルの名前がT1
フィールドの名前がF1/F2/F3/F4/F5の5つだとすれば
SQLビューにて以下のように記述して保存します。
(仮にクエリUと名づけます)
SELECT F1 FROM T1 UNION ALL SELECT F2 FROM T1 UNION ALL SELECT F3 FROM T1 UNION ALL SELECT F4 FROM T1 UNION ALL SELECT F5 FROM T1;
集計クエリはクエリビューで作成してもかまいませんし
SQLビューに直接記述してもかまいませんが
SQLで書くと以下のようなものになります。
SELECT F1,COUNT(*) FROM クエリU GROUP BY F1;
なお、以上2つのクエリはサブクエリという方法で
1つに纏めてしまう事も可能なのですが
とりあえず、機能や動作を覚えるという意味も込めて
2つのクエリのままで使う事をお勧めします。
コメント(1件)
・集計クエリを作る方法まで説明しなくても判るスキルはあるはず。
いずれも、他の質問を見ての想像だけど違うかな?