Längsta gap
Vad är den längsta tiden mellan två inkomna Evanston 311-ärenden?
Kom ihåg syntaxen för lead() och lag():
lag(column_to_adjust) OVER (ORDER BY ordering_column)
lead(column_to_adjust) OVER (ORDER BY ordering_column)
Den här övningen är en del av kursen
Exploratory Data Analysis i SQL
Övningsinstruktioner
- Välj
date_createdochdate_createdför den föregående begäran med hjälp avlead()ellerlag()efter vad som är lämpligt. - Beräkna gapet mellan varje ärende och det föregående ärendet.
- Välj raden med det största gapet.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
-- Compute the gaps
WITH request_gaps AS (
SELECT date_created,
-- lead or lag
___(date_created) OVER (___) AS previous,
-- compute gap as date_created minus lead or lag
date_created - ___(date_created) OVER (___) AS gap
FROM evanston311)
-- Select the row with the maximum gap
SELECT *
FROM request_gaps
-- Subquery to select maximum gap from request_gaps
WHERE gap = (SELECT ___
FROM request_gaps);