diff --git a/dal/db_query/queries.sql b/dal/db_query/queries.sql index 5677042..b064e14 100644 --- a/dal/db_query/queries.sql +++ b/dal/db_query/queries.sql @@ -400,22 +400,21 @@ WITH TimeBucket AS ( SELECT tb.time_interval, COUNT(DISTINCT session) AS open_count - FROM - ( - SELECT - session, - MIN(created_at) AS first_start_time - FROM - answer - WHERE - answer.quiz_id = $3 - AND start = TRUE - AND created_at >= $1::timestamp - AND created_at <= $2::timestamp - GROUP BY - session - ) AS first_starts - JOIN TimeBucket tb ON date_trunc('hour', first_starts.first_start_time) = tb.time_interval + FROM ( + SELECT + session, + MAX(created_at) AS first_start_time + FROM + answer + WHERE + answer.quiz_id = $3 + AND start = TRUE + AND created_at >= $1::timestamp + AND created_at <= $2::timestamp + GROUP BY + session + ) AS first_starts + JOIN TimeBucket tb ON date_trunc('hour', first_starts.first_start_time) = tb.time_interval GROUP BY tb.time_interval ), @@ -425,20 +424,20 @@ WITH TimeBucket AS ( COUNT(DISTINCT session) AS result_count FROM ( - SELECT - session, - MIN(created_at) AS first_result_time - FROM - answer - WHERE - answer.quiz_id = $3 - AND result = TRUE - AND created_at >= $1::timestamp - AND created_at <= $2::timestamp - GROUP BY - session - ) AS first_results - JOIN TimeBucket tb ON date_trunc('hour', first_results.first_result_time) = tb.time_interval + SELECT + session, + MAX(created_at) AS first_result_time + FROM + answer + WHERE + answer.quiz_id = $3 + AND result = TRUE + AND created_at >= $1::timestamp + AND created_at <= $2::timestamp + GROUP BY + session + ) AS first_results + JOIN TimeBucket tb ON date_trunc('hour', first_results.first_result_time) = tb.time_interval GROUP BY tb.time_interval ),