osmosis-models/models/core/core__ez_prices.sql
eric-laurello aff529847f
AN-2736 pools (#99)
* check in

* check in

* silver

* gold views

* remove dupe test, adjust silver logiv

* warning for pools with > 4 assets
2023-02-08 09:50:11 -05:00

41 lines
933 B
SQL

{{ config(
materialized = 'view',
meta ={ 'database_tags':{ 'table':{ 'PURPOSE': 'PRICES' }}}
) }}
WITH p_base AS (
SELECT
DATE_TRUNC(
'hour',
recorded_at
) AS recorded_hour,
UPPER(
A.symbol
) AS symbol,
A.price,
A.provider,
CASE
A.provider
WHEN 'coin gecko' THEN 1
WHEN 'coin market cap' THEN 2
WHEN 'pool balances' THEN 3
ELSE 4
END AS pro_rank
FROM
{{ ref('core__dim_prices') }} A qualify(ROW_NUMBER() over(PARTITION BY recorded_hour, UPPER(symbol)
ORDER BY
pro_rank) = 1))
SELECT
A.recorded_hour,
A.symbol,
b.address AS currency,
A.price
FROM
p_base A
LEFT JOIN {{ ref('silver__asset_metadata') }}
b
ON A.symbol = UPPER (
b.project_name
)