【发布时间】:2017-10-20 15:01:13
【问题描述】:
这会返回数据:
var cleanDF = readingsDF.filter(readingsDF("STR") > -1)
这不返回任何数据:
var cleanDF = spark.sql("select * from readingsDF where STR > -1")
这两个语句应该是等价的。
这是架构:
readingsDF.printSchema()
root
|-- STR: double (nullable = true)
|-- OBS: double (nullable = true)
|-- AGMT: double (nullable = true)
|-- FNDX: double (nullable = true)
|-- HIGD: double (nullable = true)
|-- DEG: double (nullable = true)
|-- CHK: double (nullable = true)
|-- AGP1: double (nullable = true)
|-- AGMN: double (nullable = true)
|-- NLV: double (nullable = true)
|-- LIV: double (nullable = true)
|-- WT: double (nullable = true)
|-- AGLP: double (nullable = true)
|-- MST: double (nullable = true)
【问题讨论】:
-
如何检查“这返回数据:”而其他SQL查询没有?
-
当你说“Spark SQL 命令不能使用双精度”时,错误是什么?
-
现在我运行了它并且它工作了:val cleanDF = spark.sql("select * from readingsDF where STR > -1")。所以这个问题应该被关闭,因为我一定遗漏了一些东西。 (但如果我这样做的话,应该会有一些错误。)
标签: scala apache-spark apache-spark-sql