誕生日を取得するSQLとして以下の文を発行し、
-- 誕生日の並び替え(多い順)
select trunc((current_date - to_date(birth,'YYYY/MM/DD'))/365) as age, count(*) as cnt
from tb_custom_user where birth is not null
group by age order by cnt desc;
次の結果を得ました。
age | cnt
-----+-----
25 | 2
26 | 1
28 | 1
(3 rows)
cntが最大数のときのageだけを取得したい場合、
上記のSQLをどう変更すればいいのでしょうか?
No.2ベストアンサー
- 回答日時:
こんにちは
頭の体操という感じで作ってみました.
もっとスマートなやり方があるのかも知れませんが...
select age, cnt from
(select trunc((current_date - to_date(birth,'YYYY/MM/DD'))/365.0) as age,
count(*) as cnt from tb_custom_user where birth is not null
group by age order by cnt desc) as cntsql
JOIN
(select max(cnt) as maxcnt from
(select trunc((current_date - to_date(birth,'YYYY/MM/DD'))/365.0) as age,
count(*) as cnt from tb_custom_user where birth is not null
group by age order by cnt desc) as cntsql
) as maxsql
ON cntsql.cnt = maxsql.maxcnt;
cntsql: wantedさんが作られたSQL
maxsql: 最大値を求めるSQL
これで,最大値の人が複数でもだいじょうぶです.
いかがでしょうか?
No.1
- 回答日時:
以下のSQL文でどうでしょう?
上位1件が表示するようにwhere句に"rownum"を付け足しました。
selecttrunc((current_date - to_date(birth,'YYYY/MM/DD'))/365) as age,
count(*) as cnt
fromtb_custom_user
wherebirth is not null
rownum = 1
group by age
order by cnt desc;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PostgreSQL SQLで検索結果の記事を表示したい 1 2022/04/28 21:03
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- PHP PHP MySql ページング 2 2022/09/20 06:38
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- PostgreSQL 画像とカテゴリーを出力したいのですが、取得の条件を付ける方法がわかりません。 2 2022/05/01 18:03
- その他(プログラミング・Web制作) Rでのスクリプトのご相談 3 2022/12/08 16:22
- Visual Basic(VBA) 配列の勉強をしています。使用する変数の意味、検索条件の書き方が難しいです。 2 2022/09/15 14:06
- Visual Basic(VBA) 日付の計算方法 2 2022/07/01 23:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
group byで指定したカラム以外...
-
postgreSQLのselect文でデータ...
-
PostgresSQLでの動的な計算
-
ストアドプロシージャによる動...
-
POSTGRESQLでt時間差が30分以上...
-
PostgresSQLで自動計算
-
フラグをたてるってどういうこ...
-
SELECT INTOで一度に複数の変数...
-
【SQL】他テーブルに含まれる値...
-
UPDATEで既存のレコードに文字...
-
truncate tableを使って複数の...
-
sqlに記述できない文字
-
集計でテストの各教科の最高得...
-
エラーを起こす方法
-
文字列を追加してUPDATEしたい
-
テーブル名が可変の場合のクエ...
-
Excel VBAのユーザーフォームで...
-
PostgreSQLのtimestamp型で時間...
-
既にテーブルが存在する場合の...
-
CSVファイルを読み込んでテーブ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
group byで指定したカラム以外...
-
postgreSQLのselect文でデータ...
-
ストアドプロシージャによる動...
-
PostgresSQLでの動的な計算
-
件数をカウントして日付でソー...
-
POSTGRESQLでt時間差が30分以上...
-
1週間後の日付を求めたい
-
複数の条件での絞り込み検索の仕方
-
日時の比較
-
売り上げ集計SQLが作れません
-
【SQL】他テーブルに含まれる値...
-
SELECT INTOで一度に複数の変数...
-
フラグをたてるってどういうこ...
-
sqlに記述できない文字
-
テーブル名が可変の場合のクエ...
-
PostgreSQLのtimestamp型で時間...
-
UPDATEで既存のレコードに文字...
-
pandasでsqlite3にテーブル作成...
-
timestampのデータはどのように...
-
オラクルのUPDATEで複数テーブル
おすすめ情報