[英]SQL/HIVE - Distinct count query - How does SELECT COUNT (DISTINCT columns,..) differ from SELECT COUNT(*) with subquery of DISTINCT records
在 HIVE 中,我尝试使用 2 种方法获取不同行的计数,
SELECT COUNT (*) FROM (SELECT DISTINCT columns FROM table);
SELECT COUNT (DISTINCT columns) FROM table;
两者都产生了不同的结果。 第一个查询的计数大于第二个查询。 它们的工作方式有何不同? 提前致谢。
对您的查询稍作更改,即为您的子查询命名,例如:
SELECT COUNT (*) FROM (SELECT DISTINCT columns FROM table) myquery;
在hive
试试这个:
SELECT COUNT (DISTINCT nvl(columns,'NA')) FROM table;
或:
SELECT COUNT (DISTINCT coalesce(columns,'NA')) FROM table;
以上查询输出将与以下相同:
SELECT COUNT (*) FROM (SELECT DISTINCT columns FROM table);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.