adriaparcerisasaxelar recap 9
Updated 2022-12-02
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
›
⌄
WITH
t1 as (
SELECT
distinct trader,
min(block_timestamp) as debut
from osmosis.core.fact_swaps
where to_currency='ibc/903A61A498756EA560B85A85132D3AEE21B5DEDD41213725D22ABF276EA6945E'
and block_timestamp>=CURRENT_DATE-INTERVAL '1 MONTH'
group by 1
),
t2 as (
SELECT
distinct x.trader,
min(block_timestamp) as selling_date
from osmosis.core.fact_swaps x
join t1 on x.trader=t1.trader and x.block_timestamp>t1.debut
where from_currency='ibc/903A61A498756EA560B85A85132D3AEE21B5DEDD41213725D22ABF276EA6945E'
and block_timestamp>=CURRENT_DATE-INTERVAL '1 MONTH'
group by 1
),
t3 as (
SELECT
distinct trader,
current_date as selling_date
from t1 where trader not in (select trader from t2)
),
t4 as (
SELECT t2.trader, datediff('day',debut,selling_date) as days_holding
from t2 join t1 on t2.trader=t1.trader
union
select t3.trader, datediff('day',debut,selling_date) as days_holding
from t3 join t1 on t3.trader=t1.trader
order by 2 desc
)
select
case when days_holding<1 then '1. Less than a day'