SELECT dayname(block_timestamp) as hours,
sum(CASE WHEN status = 'SUCCESS' THEN 1 ELSE 0 END) as successful_txns,
sum(CASE WHEN status != 'SUCCESS' THEN 1 ELSE 0 END) as unsuccessful_txns,
successful_txns+unsuccessful_txns as n_txn,
100*successful_txns/(successful_txns+unsuccessful_txns) as success_rate
FROM arbitrum.core.fact_transactions
GROUP by hours
ORDER BY hours