-- forked from Polygon block performance @ https://flipsidecrypto.xyz/studio/queries/5c999bb2-945e-4096-b371-0bda1a572919
WITH Base AS(
SELECT block_timestamp,
lag(block_timestamp, 1) over (ORDER BY block_timestamp) as base_block_lag,
timediff(SECOND, base_block_lag, block_timestamp) as base_block_timediff,
TX_COUNT
FROM base.core.fact_blocks
ORDER BY 1
)
SELECT avg(base_block_timediff) AS "Average Block Time",
max(base_block_timediff) AS Maximum_Block_Time,
min(base_block_timediff) AS Minimum_Block_Time,
avg(TX_COUNT) AS Average_Transaction_Count_Per_Block
FROM Base