hive如何计算订单表里出现过两次及以上的用户数除以用户总数的商
可以使用以下Hive SQL语句来计算订单表中出现过两次及以上的用户数除以用户总数的商:
SELECT COUNT(DISTINCT user_id) / COUNT(DISTINCT order_id) AS ratio
FROM (
SELECT user_id, COUNT(order_id) AS order_count
FROM orders
GROUP BY user_id
HAVING order_count >= 2
) t;
这个查询首先会对订单表按照用户ID进行分组,并计算每个用户的订单数量。然后,使用HAVING子句过滤出订单数量大于等于2的用户,并统计这些用户的数量。最后,除以订单表中不同用户的数量,得到商即为所求的结果。
原文地址: https://www.cveoy.top/t/topic/hhsY 著作权归作者所有。请勿转载和采集!