コンテストの制限時間が終了しました。
以降も提出を行うことができますが、順位集計には反映されません。
以降も提出を行うことができますが、順位集計には反映されません。
ソースコード
WITH T0 AS(
SELECT
COUNT(DISTINCT MEMBER_CODE) AS AMT
FROM
PURCHASE_HISTORY
), T1 AS(
SELECT
ITEM_CODE,
COUNT(DISTINCT MEMBER_CODE) AS AMT
FROM
PURCHASE_HISTORY
GROUP BY
ITEM_CODE
), T2 AS(
SELECT
T_A.ITEM_CODE AS ITEM_A,
T_B.ITEM_CODE AS ITEM_B,
COUNT(DISTINCT T_A.MEMBER_CODE) AS AMT
FROM
PURCHASE_HISTORY AS T_A
CROSS JOIN
PURCHASE_HISTORY AS T_B
WHERE
ITEM_A != ITEM_B
AND T_A.MEMBER_CODE = T_B.MEMBER_CODE
GROUP BY
ITEM_A,
ITEM_B
), T3 AS(
SELECT
T1_A.ITEM_CODE AS ITEM_A,
T1_B.ITEM_CODE AS ITEM_B,
T1_A.AMT AS AMT_A,
T1_B.AMT AS AMT_B
FROM
T1 AS T1_A
CROSS JOIN
T1 AS T1_B
), T4 AS(
SELECT
T3.ITEM_A,
T3.ITEM_B,
T0.AMT AS AMT,
T3.AMT_A AS AMT_A,
T3.AMT_B AS AMT_B,
CASE
WHEN T2.AMT IS NULL THEN 0
ELSE T2.AMT
END AS AMT_AB
FROM
T3
CROSS JOIN
T0
INNER JOIN
T2 ON
T2.ITEM_A = T3.ITEM_A
AND T2.ITEM_B = T3.ITEM_B
), T5 AS(
SELECT
ITEM_A,
ITEM_B,
ROUND(
100.0 * AMT_AB / AMT, 6
) AS SUPPORT,
ROUND(
100.0 * AMT_AB / AMT_A, 6
) AS CONFIDENCE,
ROUND(
(1.0 * AMT_AB / AMT_A) / (1.0 * AMT_B / AMT), 6
) AS LIFT
FROM
T4
ORDER BY
LIFT DESC,
SUPPORT DESC,
CONFIDENCE DESC,
ITEM_A ASC
)
SELECT
*
FROM
T5
提出情報
提出日時 | 2024/04/20 18:16:31 |
コンテスト | 第11回 SQLコンテスト |
問題 | アソシエーション分析 |
受験者 | tokusakurai |
状態 (詳細) | WA (Wrong Answer: 誤答) |
メモリ使用量 | 85 MB |
メッセージ
テストケース(通過数/総数)
0/3
状態
メモリ使用量
データパターン1
WA
83 MB
データパターン2
WA
85 MB
データパターン3
WA
85 MB