用 HUE/IMPALA 计数不同
Count distinct with HUE/IMPALA
我在 HUE 中有一个 table,例如:
ID,ProductID
1,1
1,2
1,1
1,3
1,1
1,2
1,1
1,3
2,1
2,2
2,2
2,2
2,1
2,2
2,2
2,2
我需要计算每个 ID 的产品 ID 的不同数量。
像这样:
ID,ProductID, CountofProductID
1,1,3
1,2,3
1,1,3
1,3,3
2,1,2
2,2,2
2,2,2
2,2,2
我试过了:
SELECT ID,ProductID, count(ProductID) over (partition by ID Sort by ProductID)
GROUP BY ID, ProductID
我真正需要做的是在分析函数中计数(不同)。 HUE 不允许我这样做。
有没有其他方法可以计算 window 行的不同值?
您的示例数据令人困惑。但是,您可以使用子查询和连接来解决分析非重复计数的限制:
select t.*, x.cnt
from mytable t
inner join (
select id, count(distinct product_id) cnt
from mytable t
group by id
) x on x.id = t.id
我在 HUE 中有一个 table,例如:
ID,ProductID
1,1
1,2
1,1
1,3
1,1
1,2
1,1
1,3
2,1
2,2
2,2
2,2
2,1
2,2
2,2
2,2
我需要计算每个 ID 的产品 ID 的不同数量。
像这样:
ID,ProductID, CountofProductID
1,1,3
1,2,3
1,1,3
1,3,3
2,1,2
2,2,2
2,2,2
2,2,2
我试过了:
SELECT ID,ProductID, count(ProductID) over (partition by ID Sort by ProductID)
GROUP BY ID, ProductID
我真正需要做的是在分析函数中计数(不同)。 HUE 不允许我这样做。
有没有其他方法可以计算 window 行的不同值?
您的示例数据令人困惑。但是,您可以使用子查询和连接来解决分析非重复计数的限制:
select t.*, x.cnt
from mytable t
inner join (
select id, count(distinct product_id) cnt
from mytable t
group by id
) x on x.id = t.id