mansaVelodrome Durations
    Updated 2022-07-16
    WITH base AS (
    SELECT
    *,
    CONCAT('0x', SUBSTR(topics [1] :: STRING, 27, 42)) AS provider,
    ethereum.public.udf_hex_to_int(
    topics [2] :: STRING
    ) :: DATE AS locked_date,
    regexp_substr_all(SUBSTR(DATA, 3, len(DATA)), '.{64}') AS segmented_data,
    ethereum.public.udf_hex_to_int(
    segmented_data [0] :: STRING
    ) AS tokenID,
    ethereum.public.udf_hex_to_int(
    segmented_data [1] :: STRING
    )/pow(10,18) AS VALUE,
    ethereum.public.udf_hex_to_int(
    segmented_data [2] :: STRING
    ) AS deposit_type,
    ethereum.public.udf_hex_to_int(
    segmented_data [3] :: STRING
    ) AS TIMESTAMP,
    locked_date - date(block_timestamp) as duration
    FROM
    optimism.core.fact_event_logs
    WHERE
    topics [0] :: STRING = '0xff04ccafc360e16b67d682d17bd9503c4c6b9a131f6be6325762dc9ffc7de624'
    )
    SELECT
    sum(case when duration >= 1095 then 1 end) as LongTerm,
    sum (case when duration >= 365 and duration < 1095 then 1 end) as MidTerm,
    sum (case when duration >= 31 and duration < 365 then 1 end) as ShortTerm,
    sum (case when duration < 31 then 1 end) as QuickTerm
    FROM
    base

    Run a query to Download Data