ソースコード
WITH ITEM_SUM AS (
    SELECT
        sad.ITEM_CODE
        ,SUM(UNITPRICE * SALES_QTY) AMT
    FROM SALES_DTL sad
    INNER JOIN SALES sa
        ON sad.SALES_NO = sa.SALES_NO
    WHERE
        SA.SALES_DATE BETWEEN '2023-06-01' AND '2023-06-30'
    GROUP BY
        ITEM_CODE
),
SALES_TOTAL AS (
    SELECT
        SUM(AMT) AS SALES_TOTAL
    FROM
        ITEM_SUM
),
ITEM_CUM_SUM AS (
    SELECT
        ITEM_CODE
        ,AMT
        ,SUM(AMT) OVER (ORDER BY (AMT) DESC) AS CUML_AMT
    FROM
        ITEM_SUM
)
SELECT 
    ics.ITEM_CODE AS CODE
    ,it.ITEM_NAME AS NAME
    ,ics.AMT AS SAL_AMT
    ,ics.CUML_AMT AS CML_AMT
    ,CAST(ROUND((ics.AMT / CAST(st.SALES_TOTAL AS FLOAT)*100),1) AS VARCHAR) || '%' AS SAL_COMP
    ,CAST(ROUND((ics.CUML_AMT / CAST(st.SALES_TOTAL AS FLOAT)*100),1) AS VARCHAR) || '%' AS TTL_COMP
    ,CASE
        WHEN (ics.CUML_AMT / CAST(st.SALES_TOTAL AS FLOAT)*100) <= 40
            THEN 'A'
        WHEN (ics.CUML_AMT / CAST(st.SALES_TOTAL AS FLOAT)*100) <= 80
            THEN 'B'
        ELSE 'C'
    END
FROM ITEM_CUM_SUM ics
CROSS JOIN SALES_TOTAL st
INNER JOIN ITEM it
    ON ics.ITEM_CODE = it.ITEM_CODE
ORDER BY
    SAL_AMT DESC
    ,ics.ITEM_CODE DESC;
提出情報
提出日時2025/02/04 22:59:41
コンテスト第7回 SQLコンテスト
問題ABC分析
受験者evergreen
状態 (詳細)WA
(Wrong Answer: 誤答)
メモリ使用量85 MB
メッセージ
テストケース(通過数/総数)
0/3
状態
メモリ使用量
データパターン1
WA
84 MB
データパターン2
WA
85 MB
データパターン3
WA
84 MB