コンテストの制限時間が終了しました。
以降も提出を行うことができますが、順位集計には反映されません。
以降も提出を行うことができますが、順位集計には反映されません。
ソースコード
with temp as (
select strftime('%w',SALES_DATE) WEEK
,count(*)/count(distinct SALES_DATE) ACG_CNT
,replace(sum(SALES_AMT)/count(distinct SALES_DATE),'.0','') AVG_AMT
from SALES
where SALES_TYPE <> 2
and UPDATED_NO is null
and SALES_DATE between '2024-03-01' and '2024-03-28'
group by strftime('%w',SALES_DATE)
)
select case
when t.WEEK = '0' then '日'
when t.WEEK is null then '日'
when t.WEEK = '1' then '月'
when t.WEEK = '2' then '火'
when t.WEEK = '3' then '水'
when t.WEEK = '4' then '木'
when t.WEEK = '5' then '金'
when t.WEEK = '6' then '土'
End WEEK
,case
when ACG_CNT is null then '0'
else ACG_CNT
End ACG_CNT
,case
when AVG_AMT is null then '0円'
when length(AVG_AMT) > 6
then substr(AVG_AMT,1,length(AVG_AMT)-6) || ',' || substr(AVG_AMT,length(AVG_AMT)-5,3) || ',' || substr(AVG_AMT,length(AVG_AMT)-2,3) || '円'
when length(AVG_AMT) > 3
then substr(AVG_AMT,1,length(AVG_AMT)-3) || ',' || substr(AVG_AMT,length(AVG_AMT)-2,3) || '円'
else AVG_AMT || '円'
End AVG_AMT
from (
select '0' dd union all
select '1' union all
select '2' union all
select '3' union all
select '4' union all
select '5' union all
select '6'
)c
left outer join temp t on c.dd = t.WEEK
/*
*/
/*
'日'からスタートして'金'、'土'までを表示 → WEEK
売上データの件数の1日平均件数を曜日別に集計(小数点以下は四捨五入) → AVG_CNT
売上金額合計の1日平均金額を曜日別に集計(小数点以下は四捨五入) → AVG_AMT
また、売上区分(SALES_TYPE) = 2 (売上返品)のデータ、および、赤黒伝票番号(UPDATED_NO)の値がNULL値以外(赤伝)のデータは集計対象外とする。
0 日曜日
1 月曜日
2 火曜日
3 水曜日
4 木曜日
5 金曜日
6 土曜日
*/
提出情報
提出日時 | 2024/04/20 00:16:43 |
コンテスト | 第12回 SQLコンテスト |
問題 | 曜日別売上分析 |
受験者 | ksw_201815 |
状態 (詳細) | WA (Wrong Answer: 誤答) |
メモリ使用量 | 86 MB |
メッセージ
テストケース(通過数/総数)
0/2
状態
メモリ使用量
データパターン1
WA
85 MB
データパターン2
WA
86 MB