Last active
April 8, 2025 19:06
-
-
Save gAmUssA/226323103d3ef8741c572302402b28c8 to your computer and use it in GitHub Desktop.
This file contains hidden or 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
INSERT INTO enriched_flights | |
SELECT | |
flightNumber, | |
CAST(FROM_UNIXTIME(scheduledDeparture/1000) AS TIMESTAMP(3)) AS scheduled_departure_time, | |
airline, | |
origin, | |
destination, | |
CAST(FROM_UNIXTIME(actualDeparture/1000) AS TIMESTAMP(3)) AS actual_departure_time, | |
CASE | |
WHEN status = 'CANCELLED' THEN 'CANCELLED' | |
WHEN actualDeparture IS NULL THEN 'NOT_DEPARTED' | |
WHEN actualDeparture <= scheduledDeparture THEN 'ON_TIME' | |
WHEN actualDeparture > scheduledDeparture THEN 'DELAYED' | |
ELSE 'UNKNOWN' | |
END AS departure_status, | |
CASE | |
WHEN actualDeparture > scheduledDeparture | |
THEN (actualDeparture - scheduledDeparture)/60000 | |
ELSE 0 | |
END AS delay_minutes, | |
CAST(HOUR(CAST(FROM_UNIXTIME(scheduledDeparture/1000) AS TIMESTAMP)) AS BIGINT) AS hour_of_day, | |
CASE | |
WHEN HOUR(CAST(FROM_UNIXTIME(scheduledDeparture/1000) AS TIMESTAMP)) BETWEEN 5 AND 9 THEN 'MORNING' | |
WHEN HOUR(CAST(FROM_UNIXTIME(scheduledDeparture/1000) AS TIMESTAMP)) BETWEEN 10 AND 15 THEN 'MIDDAY' | |
WHEN HOUR(CAST(FROM_UNIXTIME(scheduledDeparture/1000) AS TIMESTAMP)) BETWEEN 16 AND 19 THEN 'EVENING' | |
ELSE 'NIGHT' | |
END AS time_of_day, | |
CURRENT_TIMESTAMP AS processing_time | |
FROM | |
`flights` | |
WHERE | |
scheduledDeparture >= (UNIX_TIMESTAMP() - 604800) * 1000; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment