
SQL GROUPで件数の一番多いレコードのみ取る
ORACLE10です。
次のようなテーブルがあります。
USER -----------テーブル名
ID,NAME,DATA----列名
1,A,any
1,A,any
1,B,any
2,C,any
3,D,any
このテーブルから、IDをGROUPにして、さらに、一番使用頻度の多いNAMEを取得したいのです。
表示したいのは、IDとNAMEです。
つまり、取得結果例は次のようになります。
取得結果例
ID,NAME----列名
1,A
2,C
3,D
SQL文をどのように作れば可能でしょうか?
ちなみに、IDやNAMEのマスタテーブルはありません。
自分では、「(select ID, NAME, count(*) from USER group by ID, NAME) COUNT」で、COUNTを内部テーブルにして、グループ内で一番多いcount(*)をmaxで取得してみようかと思ったんですが、そこからアイデアが出ませんでした。
No.1ベストアンサー
- 回答日時:
SELECT A.ID,A.NAME FROM
(SELECT ID,NAME,COUNT(*) KAZU FROM USER
GROUP BY ID,NAME) A
LEFT OUTER JOIN
(SELECT ID,NAME,COUNT(*) KAZU FROM USER
GROUP BY ID,NAME) B
ON A.ID=B.ID AND A.KAZU<B.KAZU
GROUP BY A.ID,A.NAME
HAVING COUNT(B.ID)=0
こんな感じかな?
ID、NAMEと件数からなるクエリを二つ作り、それぞれを結合
させます。本命のAから見て、同じIDを持ち、自分より件数の
大きいB側のレコード数を調べます。これが0であるもの、即ち、
「自分の件数より大きい件数のデータが無い」が抽出条件です。
尚、最大件数と同数のデータは全て抽出されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- MySQL 【MySQL】本当に困っています。詳しい方、ご教授よろしくお願いします。 1 2023/06/03 14:18
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL mysqlの結合について教えてください 1 2022/05/19 15:13
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
select句副問い合わせ 値の個...
-
select insertで複数テーブルか...
-
oracleの分割delete
-
SELECTの結果で同一行を複数回...
-
MERGE文を単体テーブルに対して...
-
複数テーブルのMAX値の行データ...
-
SQL GROUPで件数の一番多いレコ...
-
SET句内で複数の条件を指定して...
-
unionでマージした副問合せを結合
-
unionの結果は集計はできないで...
-
件数を取得する方法
-
固定値を含む結合と複数テーブ...
-
updateの一括実行
-
マテビューのNOTNULL設定について
-
SQLの書き方(チェックボックス)
-
oracleのsqlについて質問です。...
-
結合と副問い合わせの違い
-
再起SQL が無限ループします。
-
外部結合とor条件混在の記述方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
GROUP BYを行った後に結合した...
-
select句副問い合わせ 値の個...
-
select insertで複数テーブルか...
-
SELECTの結果で同一行を複数回...
-
MERGE文を単体テーブルに対して...
-
外部結合とor条件混在の記述方法
-
固定値を含む結合と複数テーブ...
-
oracleの分割delete
-
複数テーブルのMAX値の行データ...
-
unionでマージした副問合せを結合
-
SQL GROUPで件数の一番多いレコ...
-
SET句内で複数の条件を指定して...
-
他のテーブルを参照した値はupd...
-
unionの結果は集計はできないで...
-
COUNTの取得方法(?)について...
-
結合と副問い合わせの違い
-
マテビューのNOTNULL設定について
-
SQLの書き方(チェックボックス)
-
DELETE 文とEXISTSの使い方につ...
-
ある条件を持たないレコードの抽出
おすすめ情報