Created
October 9, 2019 09:08
-
-
Save jerryjj/0963fee1ad9845db8eafda441c786215 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
WITH dummy_data AS ( | |
SELECT * FROM unnest( | |
array<struct<device_id string, ride_id string, timestamp TIMESTAMP, event_name string, latitude float64, longitude float64, battery_percentage int64, power_on_status bool>>[ | |
("0001", "123456", TIMESTAMP("2019-10-07 13:28:30.000 UTC"), "poweron", 60.1696993, 24.9294322, 88, true), | |
("0001", "123456", TIMESTAMP("2019-10-07 13:29:00.000 UTC"), "gps", 60.16962, 24.9288, 86, true), | |
("0001", "123456", TIMESTAMP("2019-10-07 13:29:30.000 UTC"), "gps", 60.16958, 24.92813, 84, true), | |
("0001", "123456", TIMESTAMP("2019-10-07 13:30:00.000 UTC"), "gps", 60.16969, 24.92074, 82, true), | |
("0001", "123456", TIMESTAMP("2019-10-07 13:30:30.000 UTC"), "poweroff", 60.1680235, 24.9222142, 81, false), | |
("0002", "123457", TIMESTAMP("2019-10-07 13:29:00.000 UTC"), "poweron", 60.1696993, 24.9294322, 20, true), | |
("0002", "123457", TIMESTAMP("2019-10-07 13:29:30.000 UTC"), "gps", 60.16962, 24.9288, 18, true), | |
("0002", "123457", TIMESTAMP("2019-10-07 13:30:00.000 UTC"), "gps", 60.16958, 24.92813, 14, true), | |
("0002", "123457", TIMESTAMP("2019-10-07 13:30:30.000 UTC"), "gps", 60.16969, 24.92074, 10, true), | |
("0002", "123457", TIMESTAMP("2019-10-07 13:32:00.000 UTC"), "poweroff", 60.1680235, 24.9222142, 4, false) | |
] | |
) | |
), | |
-- Defines collection of ride start events from our data | |
starts AS (SELECT | |
timestamp, device_id, ride_id rid, latitude lat, longitude lng, battery_percentage bttr | |
FROM dummy_data | |
WHERE | |
event_name = "poweron"), | |
-- Defines collection of ride end events from our data | |
ends AS (SELECT | |
timestamp, device_id, ride_id rid, latitude lat, longitude lng, battery_percentage bttr | |
FROM dummy_data | |
WHERE | |
event_name = "poweroff"), | |
-- Defines collection of location update events from our data | |
location_updates AS (SELECT | |
timestamp, device_id, ride_id rid, latitude lat, longitude lng, battery_percentage bttr | |
FROM dummy_data | |
WHERE | |
event_name = "gps") | |
-- QUERY comes after this: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment