Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop 在配置单元上处理空值_Hadoop_Hive - Fatal编程技术网

Hadoop 在配置单元上处理空值

Hadoop 在配置单元上处理空值,hadoop,hive,Hadoop,Hive,我在配置单元中有一个类型为double的列,但执行此操作时某些行为NULL: select columnA from table; 现在,如果我运行以下命令,两个查询的结果都是0: select count(*) from table where columnA = "NULL"; select count(*) from table where columnA = NULL; 如何计算表中为空的行数?正确的查询是: select count(*) from table where colu

我在配置单元中有一个类型为double的列,但执行此操作时某些行为NULL:

select columnA from table;
现在,如果我运行以下命令,两个查询的结果都是0:

select count(*) from table where columnA = "NULL";
select count(*) from table where columnA = NULL;
如何计算表中为空的行数?

正确的查询是:

select count(*) from table where columnA is null;
在配置单元中,count(*)统计所有行,count(columnA)只统计columnA为非空的行。如果要执行多个列,可以将查询编写为:

select count(*)-count(columnA), count(*)-count(columnB) from table;
并获取每列中的空值数。

Olaf,您知道我如何为表中的每一列执行此操作吗?该表有大量列,我不希望对每一列都运行一个查询。@user2932774:我没有在配置单元中尝试过,但在标准SQL中可以使用“case”。请参阅以供参考:谢谢您的参考!但是columnA=null代表什么呢?它不会抛出异常,这表明“columnA=null”至少工作正常。