首页 文章

如何在Spark SQL中表示包含空格的列

提问于
浏览
5

我们尝试使用方括号 [column name] ,单引号和双引号以及反引号来包装列名,但它们都不起作用 .

Spark SQL是否支持名称中包含空格的列?

谢谢!

1 回答

  • 25

    反引号似乎工作得很好:

    scala> val df = sc.parallelize(Seq(("a", 1))).toDF("foo bar", "x")
    df: org.apache.spark.sql.DataFrame = [foo bar: string, x: int]
    scala> df.registerTempTable("df")
    
    scala> sqlContext.sql("""SELECT `foo bar` FROM df""").show
    foo bar
    a
    

    DataFrame API相同:

    scala> df.select($"foo bar").show
    foo bar
    a
    

    所以看起来它支持,虽然我怀疑它是推荐的 .

相关问题