Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1507 / 2272 ツリー ←次へ | 前へ→

【6835】最頻値の求め方 POKOTE 05/11/19(土) 18:14 質問[未読]
【6837】Re:最頻値の求め方 小僧 05/11/21(月) 15:20 回答[未読]
【6838】Re:最頻値の求め方 POKOTE 05/11/21(月) 16:07 お礼[未読]

【6835】最頻値の求め方
質問  POKOTE  - 05/11/19(土) 18:14 -

引用なし
パスワード
   いつもお世話になっています。
Excelではmode関数で最頻値は求められますが、
Accessではその関数は使えないようです。

データが100万以上あるのでExcelで処理できません。
どのようにしたらいいでしょうか?

元テーブルは、
------------------------------------------------------
日付 時刻 値1  値2  データ種類  データ内容

------------------------------------------------------
となっていますが、値2毎にデータ内容の最頻値を
調べたいのです。

よろしくお願いします。

【6837】Re:最頻値の求め方
回答  小僧  - 05/11/21(月) 15:20 -

引用なし
パスワード
   ▼POKOTE さん:
こんにちは。

あまり綺麗なやり方でないので
他の回答者からもっと良い方法が提案されるかもしれませんが、

SELECT テーブル名.値2, テーブル名.データ内容, Count(テーブル名.データ内容) AS カウント
FROM テーブル名
GROUP BY テーブル名.値2, テーブル名.データ内容;

上記 SQL をクエリの SQL ビューに記述して、
「中間クエリ」という名前で保存した後、

SELECT P.値2, 中間クエリ.データ内容, P.カウントの最大
FROM [
SELECT 中間クエリ.値2, Max(中間クエリ.カウント) AS カウントの最大
FROM 中間クエリ
GROUP BY 中間クエリ.値2
]. AS P
INNER JOIN 中間クエリ
ON (P.カウントの最大 = 中間クエリ.カウント) AND (P.値2 = 中間クエリ.値2)
GROUP BY P.値2, 中間クエリ.データ内容, P.カウントの最大;

こんな SQL で結果を確認されてみてください。

【6838】Re:最頻値の求め方
お礼  POKOTE  - 05/11/21(月) 16:07 -

引用なし
パスワード
   ▼小僧 さん:
ありがとうございます!!
早速明日試してみたいと思います。
また分からないところがありましたら、
ご指導よろしくお願い致します。

1507 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078229
(SS)C-BOARD v3.8 is Free