ソースコード
WITH T as (
SELECT
 CUST_CODE 
,COUNT(*) COUNT
,SUM(ORDER_AMNT) SUM_AMT
,ROUND(AVG(ORDER_AMNT), 0) AVG_AMT
FROM ORDERS
WHERE ORDER_DATE >= '2023-09-01' and ORDER_DATE < '2023-10-01'
GROUP BY CUST_CODE 
HAVING COUNT(*) >= 5
), A as (
SELECT
 T.CUST_CODE as CODE
,C.CUST_NAME as NAME
,COUNT as CNT
,SUM_AMT as TTL_AMT
,AVG_AMT as AVG_AMT
,ROW_NUMBER() over (ORDER BY COUNT desc, SUM_AMT desc, AVG_AMT) rn
FROM T
JOIN CUSTOMER C ON T.CUST_CODE = C.CUST_CODE
)
SELECT
 CODE,NAME, CNT, TTL_AMT, AVG_AMT
FROM A
WHERE rn <= 5
ORDER BY rn
提出情報
提出日時2023/12/17 19:25:05
コンテスト第10回 SQLコンテスト
問題優良顧客
受験者mine
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量86 MB
メッセージ
テストケース(通過数/総数)
2/2
状態
メモリ使用量
データパターン1
AC
86 MB
データパターン2
AC
85 MB