ソースコード
WITH base AS (
	SELECT
			PF_CODE
			,TOTAL_VALUE
			,totalrank
	FROM (
		SELECT
			PF_CODE
			,TOTAL_VALUE
			,RANK() OVER(ORDER BY TOTAL_VALUE DESC) AS totalrank
		FROM CONVENIENCE
		WHERE SURVEY_YEAR = 2019
			AND KIND_CODE = '100'
		)
	)
, datacnt AS (
	SELECT COUNT(*) AS countdata
	FROM base
)
,keisan AS (
	SELECT t0.TOTAL_VALUE,t0.totalrank
	FROM base AS t0
	WHERE 
		CASE WHEN --偶数奇数の場合分け
		(SELECT 1.0*countdata FROM datacnt)/2 = ROUND(1.0*(SELECT countdata FROM datacnt)/2,0) THEN
			t0.totalrank IN (ROUND(1.0*(SELECT countdata FROM datacnt)/2,0),ROUND(1.0*(SELECT countdata FROM datacnt)/2,0)+1)
		ELSE
			t0.totalrank IN (ROUND(1.0*(SELECT countdata FROM datacnt)/2,0)) END
)
SELECT 
	ROUND(1.0*AVG(TOTAL_VALUE)) AS SA_MEDIAN
FROM keisan
提出情報
提出日時2022/12/15 15:08:19
コンテスト第4回 SQLコンテスト
問題中央値の算出
受験者katsu
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量78 MB
メッセージ
テストケース(通過数/総数)
3/3
状態
メモリ使用量
データパターン1
AC
78 MB
データパターン2
AC
78 MB
データパターン3
AC
76 MB