WITH view AS (
SELECT *
,ROW_NUMBER() OVER (ORDER BY block_number) AS rn
FROM optimism.core.fact_blocks
WHERE block_timestamp > CURRENT_TIMESTAMP - interval '1 week'
)
SELECT block_ts
,time_diff
FROM (
SELECT mc.block_timestamp AS block_ts
,datediff('seconds', mc.block_timestamp, mp.block_timestamp) AS time_diff
FROM view mc
JOIN view mp
ON mc.rn = mp.rn - 1
)
WHERE time_diff > 0