ソースコード
-- select round(avg(total_value)) as SA_MEDIAN
-- from (
--         select 
--             c1.total_value
--         from convenience c1
--         inner join convenience c2
--             on c2.survey_year=2019
--             and c2.kind_code='100'
--         where 
--             c1.survey_year=2019
--             and c1.kind_code='100'
--         group by c1.total_value
--         having case mod(count(*),2) when 0 then sum(case when c2.total_value>=c1.total_value then 1 else 0 end)>=count(*)/2
--                                             and sum(case when c2.total_value<=c1.total_value then 1 else 0 end)>=count(*)/2
--                                     else sum(case when c2.total_value>=c1.total_value then 1 else 0 end)>count(*)/2
--                                     and  sum(case when c2.total_value<=c1.total_value then 1 else 0 end)>count(*)/2 
--                                     end
--     );

select round(avg(total_value)) as SA_MEDIAN
from (
        select total_value
        from convenience
        where survey_year=2019
        and   kind_code=100
        order by total_value
        limit 2 -(select count(*)%2 from convenience where survey_year=2019 and kind_code=100)
        offset (select (count(*)-1)/2 from convenience where survey_year=2019 and kind_code=100)
    );
提出情報
提出日時2024/05/16 11:40:24
コンテスト第4回 SQLコンテスト
問題中央値の算出
受験者sjty9561
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量85 MB
メッセージ
テストケース(通過数/総数)
3/3
状態
メモリ使用量
データパターン1
AC
84 MB
データパターン2
AC
85 MB
データパターン3
AC
84 MB