计算 SQL 中的分组日期
Count grouped dates in SQL
我目前的数据如下:
id admin_date grp
--------------------------------------------
1 3/10/2019 1
1 3/11/2019 1
1 3/23/2019 2
1 3/24/2019 2
1 3/25/2019 2
2 12/26/2017 1
2 2/27/2019 2
2 3/16/2019 3
2 3/17/2019 3
其中 grp
是分组的连续日期。我想计算每个 grp
,所以根据以上数据,我想得到结果 5(ID 1 有 2 个连续的日期组,ID 2 有 3 个连续的日期组)。任何人都知道如何解决这个问题?
你只想count(distinct)
吗?我认为 Netezza 不支持多个参数,如:
select count(distinct id, grp)
from t;
所以可以使用子查询:
select count(*)
from (select distinct id, grp from t) t;
我目前的数据如下:
id admin_date grp
--------------------------------------------
1 3/10/2019 1
1 3/11/2019 1
1 3/23/2019 2
1 3/24/2019 2
1 3/25/2019 2
2 12/26/2017 1
2 2/27/2019 2
2 3/16/2019 3
2 3/17/2019 3
其中 grp
是分组的连续日期。我想计算每个 grp
,所以根据以上数据,我想得到结果 5(ID 1 有 2 个连续的日期组,ID 2 有 3 个连续的日期组)。任何人都知道如何解决这个问题?
你只想count(distinct)
吗?我认为 Netezza 不支持多个参数,如:
select count(distinct id, grp)
from t;
所以可以使用子查询:
select count(*)
from (select distinct id, grp from t) t;