osmosis-models/models/silver/silver__superfluid_staked_balances.sql
eric-laurello e3482847d3
AN-2245 superfluid staked balances (#64)
* check in

* WIP check in

* WIP check in

* locked LP actions and balances

* add business logic test, fix test failure & typos

* ds store

* ds store

* more logic tests
2022-10-21 13:18:58 -04:00

72 lines
1.5 KiB
SQL

{{ config(
materialized = 'incremental',
unique_key = "_unique_key",
incremental_strategy = 'merge',
cluster_by = ['block_timestamp::DATE'],
) }}
WITH super AS (
SELECT
block_id,
delegator_address AS address,
lock_id
FROM
{{ ref('silver__superfluid_staking') }}
s
{% if is_incremental() %}
WHERE
block_timestamp :: DATE >=(
SELECT
DATEADD('day', -2, MAX(block_timestamp))
FROM
{{ this }})
{% endif %}
),
lp_balances AS (
SELECT
A.block_id,
A.block_timestamp,
A.address,
A.balance,
A.currency,
A.decimal,
A.lock_id,
_inserted_timestamp
FROM
{{ ref('silver__locked_liquidity_balances') }} A
JOIN super b
ON A.block_id = b.block_id
AND A.address = b.address
AND A.lock_id = b.lock_id
{% if is_incremental() %}
WHERE
block_timestamp :: DATE >=(
SELECT
DATEADD('day', -2, MAX(block_timestamp))
FROM
{{ this }})
{% endif %}
)
SELECT
block_id,
block_timestamp,
'superfluid staked' AS balance_type,
address,
lock_id,
currency,
DECIMAL,
balance,
concat_ws(
'-',
block_id,
address,
lock_id,
currency
) AS _unique_key,
_inserted_timestamp
FROM
lp_balances