ソースコード
--ORDER_DATE:2023年4月1日から6月30日
--ORDER_NOで結合
--商品ごとに受注数量(ORDER_QTY)を集計
--受注数>最新の受注日>商品コード(ITEM_CODE)の降順
WITH A AS(
SELECT ORDER_QTY,MAX(ORDER_DATE),ITEM_CODE,
ROW_NUMBER() OVER(ORDER BY ORDER_QTY DESC,MAX(ORDER_DATE) DESC,ITEM_CODE DESC) AS PRANK
FROM ORDERS_DTL
JOIN ORDERS
ON ORDERS_DTL.ORDER_NO = ORDERS.ORDER_NO
WHERE ORDERS.ORDER_DATE BETWEEN '2023-04-01' AND '2023-06-30'
GROUP BY ITEM_CODE
)

UPDATE ITEM SET ITEM_POPULAR_RANK = COALESCE((SELECT PRANK FROM A WHERE A.ITEM_CODE = ITEM.ITEM_CODE), 0);

SELECT *
FROM ITEM;

--IFNULL(PRANK, '0') AS ITEM_POPULAR_RANK,
--SELECT ifnull(列名,'0') FROM テーブル名;
--集計した受注数量が多い商品から順に1からの連番
--人気順位(ITEM_POPULAR_RANK)
--対象期間に受注が存在しない商品の人気順位は0
提出情報
提出日時2023/12/19 00:02:43
コンテスト第8回 SQLコンテスト
問題人気順位
受験者inu
状態 (詳細)WA
(Wrong Answer: 誤答)
メモリ使用量86 MB
メッセージ
テストケース(通過数/総数)
0/2
状態
メモリ使用量
データパターン1
WA
84 MB
データパターン2
WA
86 MB