ソースコード
-- 所得階層別世帯人員別に世帯数を集計した世帯集計データより、各所得階層で世帯数が最大の世帯人員と世帯数を表示しなさい。
-- 各所得階層での最大の世帯数は重複しないものとする。
-- また、世帯人員コード(PERSON_CODE) = '1'(総数)、および、所得階層コード(CLASS_CODE) = '01'(総数)のレコードは対象外とすること。

-- 表示項目は以下とする。(エイリアスを使用し→の項目名とする)

-- CLASS_NAME → CLASS
-- PERSON_NAME → PERSON
-- AMT → HOUSEHOLDS
-- 表示順

-- CLASS_CODEの昇順

WITH
base AS (
    SELECT
        CLASS_NAME AS CLASS
        , PERSON_NAME AS PERSON
        , AMT AS HOUSEHOLDS
        , RANK() OVER (PARTITION BY CLASS_NAME ORDER BY AMT DESC) AS HOUSEHOLDS_RANK
    FROM
        HOUSEHOLD
    WHERE
        PERSON_CODE != '1'
        AND CLASS_CODE != '01'
    ORDER BY
        CLASS_CODE ASC
)
SELECT
    CLASS
    , PERSON
    , HOUSEHOLDS
FROM
    base
WHERE
    HOUSEHOLDS_RANK = 1
提出情報
提出日時2023/01/23 15:58:11
コンテスト第3回 SQLコンテスト
問題最大世帯人員
受験者res1235
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量84 MB
メッセージ
テストケース(通過数/総数)
2/2
状態
メモリ使用量
データパターン1
AC
84 MB
データパターン2
AC
76 MB