Fix penalty on Excel
This commit is contained in:
@ -64,7 +64,7 @@ WITH completion_status AS (
|
|||||||
-- 遅刻ペナルティの計算(1秒でも遅れたら、その分数に応じて-50点/分)
|
-- 遅刻ペナルティの計算(1秒でも遅れたら、その分数に応じて-50点/分)
|
||||||
CASE
|
CASE
|
||||||
WHEN gi.goaltime > ev.end_datetime THEN
|
WHEN gi.goaltime > ev.end_datetime THEN
|
||||||
(CEIL(EXTRACT(EPOCH FROM (gi.goaltime - ev.end_datetime)) / 60)) * 50
|
(CEIL(EXTRACT(EPOCH FROM (gi.goaltime - ev.end_datetime)) / 60)) * (-50)
|
||||||
ELSE 0
|
ELSE 0
|
||||||
END as late_penalty_points,
|
END as late_penalty_points,
|
||||||
gi.goaltime,
|
gi.goaltime,
|
||||||
@ -83,10 +83,7 @@ points_calculation AS (
|
|||||||
SELECT
|
SELECT
|
||||||
*,
|
*,
|
||||||
-- 総合ポイントの再計算(遅刻ペナルティを含む)
|
-- 総合ポイントの再計算(遅刻ペナルティを含む)
|
||||||
GREATEST(
|
raw_points + late_penalty_points as total_points
|
||||||
raw_points - late_penalty_points,
|
|
||||||
0
|
|
||||||
) as total_points
|
|
||||||
FROM completion_status
|
FROM completion_status
|
||||||
),
|
),
|
||||||
valid_rankings AS (
|
valid_rankings AS (
|
||||||
@ -172,12 +169,13 @@ SELECT
|
|||||||
cu.female as owner_is_female,
|
cu.female as owner_is_female,
|
||||||
|
|
||||||
-- スコア情報
|
-- スコア情報
|
||||||
COALESCE(cs.total_points, 0) as total_points,
|
|
||||||
COALESCE(cs.normal_points, 0) as normal_points,
|
COALESCE(cs.normal_points, 0) as normal_points,
|
||||||
COALESCE(cs.bonus_points, 0) as bonus_points,
|
COALESCE(cs.bonus_points, 0) as bonus_points,
|
||||||
COALESCE(cs.penalty_points, 0) as penalty_points,
|
|
||||||
COALESCE(cs.total_checkins, 0) as checkin_count,
|
COALESCE(cs.total_checkins, 0) as checkin_count,
|
||||||
COALESCE(cs.purchase_count, 0) as purchase_count,
|
COALESCE(cs.purchase_count, 0) as purchase_count,
|
||||||
|
cr.late_penalty_points as penalty_points, -- 遅刻ペナルティを使用
|
||||||
|
cr.total_points as total_points, -- v_category_rankingsの総合ポイントを使用
|
||||||
|
|
||||||
|
|
||||||
-- ゴール情報
|
-- ゴール情報
|
||||||
gi.goalimage as goal_image,
|
gi.goalimage as goal_image,
|
||||||
@ -241,7 +239,8 @@ GROUP BY
|
|||||||
cu.email, cu.firstname, cu.lastname, cu.date_of_birth, cu.female,
|
cu.email, cu.firstname, cu.lastname, cu.date_of_birth, cu.female,
|
||||||
cs.total_points, cs.normal_points, cs.bonus_points, cs.penalty_points,
|
cs.total_points, cs.normal_points, cs.bonus_points, cs.penalty_points,
|
||||||
cs.total_checkins, cs.purchase_count, cs.last_checkin,
|
cs.total_checkins, cs.purchase_count, cs.last_checkin,
|
||||||
cr.ranking, cr.total_valid_participants,
|
cr.original_total_points, cr.late_penalty_points, cr.total_points,
|
||||||
|
cr.completion_status, cr.ranking, cr.total_valid_participants,
|
||||||
gi.goalimage, gi.goaltime,
|
gi.goalimage, gi.goaltime,
|
||||||
e.owner_id;
|
e.owner_id;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user