Spark SQL:为什么简单查询会出现此不受支持的语言功能错误?

Spark SQL:为什么简单查询会出现此不受支持的语言功能错误?,sql,apache-spark,apache-spark-sql,Sql,Apache Spark,Apache Spark Sql,查询=从B1中选择F1、SM3,其中SM4>10 将创建解析树。 14/10/13 14:48:32信息解析驱动程序:解析命令:从B1中选择F1、SM3,其中SM4>10 14/10/13 14:48:32信息解析驱动程序:解析已完成 但在节点到计划的转换中,它完全失败了!解决方法是删除where子句 TOK_QUERY TOK_FROM TOK_TABREF TOK_TABNAME B1 TOK_INSERT TOK_DESTINATION TOK_DIR

查询=从B1中选择F1、SM3,其中SM4>10

将创建解析树。
14/10/13 14:48:32信息解析驱动程序:解析命令:从B1中选择F1、SM3,其中SM4>10
14/10/13 14:48:32信息解析驱动程序:解析已完成

但在节点到计划的转换中,它完全失败了!解决方法是删除where子句

TOK_QUERY
 TOK_FROM
  TOK_TABREF
   TOK_TABNAME
    B1
TOK_INSERT
  TOK_DESTINATION
   TOK_DIR
    TOK_TMP_FILE
TOK_SELECT
  TOK_SELEXPR
    TOK_TABLE_OR_COL
      F1
  TOK_SELEXPR
    TOK_TABLE_OR_COL
      SM3
TOK_WHERE
  >
    TOK_TABLE_OR_COL
      SM4
    10

我认为这个错误可能是因为我使用了Spark(SQL)1.1.0和Hive0.13二进制文件


我发现解析器无法将“10”识别为有效的数值,尽管它被正确地标记了(代码中的标记类型为290)。在删除配置单元0.13引用时,它似乎有效

我认为在Spark SQL的当前阶段,最好是询问邮件列表:user@spark.apache.orgI遇到了类似的问题,最后不得不使用两个查询。首先我选择了*WHERE stuff并注册了一个新的临时表,然后我进行了真正的查询。这很有效,但很麻烦。你用的是什么版本的Spark?你能提供一份工作吗?