在HIVE中,我尝试用2种方法计算不同的行数,
SELECT COUNT (*) FROM (SELECT DISTINCT columns FROM table);
SELECT COUNT (DISTINCT columns) FROM table;
两者都产生不同的结果。 第一个查询的计数大于第二个查询的计数。 他们的工作方式有何不同? 提前谢谢。
答案 0 :(得分:1)
对您的查询稍作更改,即为您的子查询命名例如:
SELECT COUNT (*) FROM (SELECT DISTINCT columns FROM table) myquery;
答案 1 :(得分:0)
在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);