- ベストアンサー
アクセスのクエリ 重複数のカウント方法
アクセスのクエリ内で、複数の重複がありますが、それぞれの重複カウントをしたいのですが、その式をご存知の方、教えていただけないでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
#3さんの回答は、標準的なSQLです、Access2000では通りませんでした。Accessではorder by、havingで別名が使えません。最新バージョンで試した訳ではないので、今は使えるようになっているかもしれませんが、念のため書き直すとこうなります。 【SQL例1】 select 名前,count(*) as cnt from 表名 group by 名前 order by count(*) desc 【SQL例2】 select 名前,count(*) as cnt from 表名 group by 名前 having count(*)>1 order by count(*) desc
その他の回答 (4)
- chukenkenkou
- ベストアンサー率43% (833/1926)
#3回答者です。 #4さん、フォローありがとうございました。
- chukenkenkou
- ベストアンサー率43% (833/1926)
アクセスには詳しくないので、標準的なSQLを回答します。 【SQL例1】 select 名前,count(*) as cnt from 表名 group by 名前 order by cnt desc 重複しているデータ(同じ値が2件以上あるもの)だけを表示したい場合は、SQL例1にhavingを追加します。 【SQL例2】 select 名前,count(*) as cnt from 表名 group by 名前 having count>1 order by cnt desc
- venzou
- ベストアンサー率71% (311/435)
集計クエリでcount関数を使って重複数を調べることが出来ます。 SELECT テーブル名.名前, Count(テーブル名.名前) AS 重複数 FROM テーブル名 GROUP BY テーブル名.名前 ORDER BY Count(テーブル名.名前) DESC;
- venzou
- ベストアンサー率71% (311/435)
詳しい情報をお願いします。 ・クエリの内容(SQL) ・重複をカウントしたいフィールド名 ちなみに、SQLはクエリのデザイン画面で、[表示]→[SQLビュー]で確認できます。
補足
ありがとうございます。 同じ名前が重複している方が何名かいて、重複している数が多い人をクエリで上のほうから並べたいのです。 フィールド名 名前
お礼
ありがとうございました。 クロス集計苦手だったのですが、出来ましたm(..)m