with base as (select date_trunc('second', block_timestamp) as second,
count(distinct(tx_hash)) as count_tx
from ethereum.core.fact_transactions
where block_timestamp >= '2022-06-01'
group by 1)
select date_trunc('hour',second) as day,
min(count_tx) as "Minimum TPS by Hour",
avg(count_tx) as "Average TPS by Hour",
max(count_tx) as "Maximum TPS by Hour"
from base
group by 1