Spark sqlContext全选

Ale*_*ire 1 scala apache-spark apache-spark-sql

我使用Spark SQLContext读取数据并将其存储在变量中:

 val somevar = sqlContext.read.parquet(some_file.parquet)
Run Code Online (Sandbox Code Playgroud)

然后我希望使用select选择所有值,例如:

  somevar.select(*)
Run Code Online (Sandbox Code Playgroud)

但这不起作用.

相当于:

somevar.registerTempTable("sometable")

sqlContext.sql("SELECT * FROM sometable")
Run Code Online (Sandbox Code Playgroud)

但我不想做以前的事情.

亲切的问候.

eli*_*sah 6

您有语法错误.以下语法是如何使用spark-sql 选择所有列的:

import sqlContext.implicit._

val df = Seq((1,2),(2,3)).toDF
// df: org.apache.spark.sql.DataFrame = [_1: int, _2: int]

// solution 1
df.select("*")
// res54: org.apache.spark.sql.DataFrame = [_1: int, _2: int]

// alternative 1
df.select($"*")
// res55: org.apache.spark.sql.DataFrame = [_1: int, _2: int]

// alternative 2
df.select('*)
// res56: org.apache.spark.sql.DataFrame = [_1: int, _2: int]
Run Code Online (Sandbox Code Playgroud)