Skip to content

Instantly share code, notes, and snippets.

@henhiskan
Last active December 10, 2017 04:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save henhiskan/898e59f76930952ac46d6b5f64f4ee74 to your computer and use it in GitHub Desktop.
Save henhiskan/898e59f76930952ac46d6b5f64f4ee74 to your computer and use it in GitHub Desktop.
Triple join with windows function
SELECT
city_name,
extract(dow FROM events._ts) as dow,
count(1) as trips,
ROUND(count(1)/ SUM(count(1)) OVER () * 100, 2) as percentage
FROM events LEFT JOIN cities ON events.city_id = cities.city_id
LEFT JOIN trips ON trips.client_id = events.rider_id
WHERE event_name = 'sign_up_success' AND
city_name IN ('Qarth', 'Meereen') AND
extract(year FROM events._ts) = 2016 AND
extract(week from events._ts) = 1 AND
trips.status = 'completed' AND
extract(hour from trips.request_at - events._ts) <= 168
GROUP BY
city_name,
extract(dow FROM events._ts)
ORDER BY
city_name,
extract(dow FROM events._ts)
;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment