K41R0NAleo Users
    Updated 2025-01-09
    WITH all_time_transactions AS (
    SELECT
    MIN(block_timestamp) AS first_block_date,
    MAX(block_timestamp) AS last_block_date,
    SUM(tx_count) AS total_transactions,
    COUNT(DISTINCT block_id) AS total_blocks,
    AVG(tx_count) AS avg_transactions_per_block
    FROM aleo.core.fact_blocks
    ),
    labeled_addresses AS (
    SELECT
    COUNT(DISTINCT address) AS total_labeled_addresses,
    COUNT(DISTINCT CASE WHEN label_type = 'user' THEN address END) AS total_user_addresses,
    COUNT(DISTINCT CASE WHEN label_type = 'contract' THEN address END) AS total_contract_addresses,
    COUNT(DISTINCT project_name) AS total_projects
    FROM aleo.core.dim_labels
    )
    SELECT
    att.first_block_date,
    att.last_block_date,
    att.total_transactions,
    att.total_blocks,
    ROUND(att.avg_transactions_per_block, 2) AS avg_transactions_per_block,
    la.total_labeled_addresses,
    la.total_user_addresses,
    la.total_contract_addresses,
    la.total_projects,
    ROUND(att.total_transactions / NULLIF(DATEDIFF(day, att.first_block_date, att.last_block_date), 0), 2) AS avg_daily_transactions,
    ROUND(la.total_user_addresses * 100.0 / NULLIF(la.total_labeled_addresses, 0), 2) || '%' AS user_address_percentage,
    ROUND(att.total_transactions * 1.0 / NULLIF(la.total_labeled_addresses, 0), 2) AS transactions_per_address
    FROM all_time_transactions att
    CROSS JOIN labeled_addresses la;
    Last run: about 1 month ago
    FIRST_BLOCK_DATE
    LAST_BLOCK_DATE
    TOTAL_TRANSACTIONS
    TOTAL_BLOCKS
    AVG_TRANSACTIONS_PER_BLOCK
    TOTAL_LABELED_ADDRESSES
    TOTAL_USER_ADDRESSES
    TOTAL_CONTRACT_ADDRESSES
    TOTAL_PROJECTS
    AVG_DAILY_TRANSACTIONS
    USER_ADDRESS_PERCENTAGE
    TRANSACTIONS_PER_ADDRESS
    1
    2024-09-04 15:00:00.0002025-03-08 00:35:33.0001415498853666272.6425001376513.450.00%566199.52
    1
    114B
    1s