如何在表中创建scala中的数据帧

时间:2017-06-28 20:20:39

标签: scala spark-dataframe

我正在尝试为scala中的两个表创建dataframe,并在尝试运行时获取syntax error。斯卡拉很新。

import org.apache.spark.sql.{DataFrame, SparkSession}
import org.apache.spark.sql.functions._

object testfunction extends App {
val session = SparkSession.builder().master("local").getOrCreate()

import session.implicits._


val sqlContext = SQLContext(sc) 
val df1 = sqlContext.sql("select * from table1")
val df2 = sqlContext.sql("select * from table2")
//trying to call a function 
testfunction("key",df1,df2)
}

//// 
testfunction definition { .... }

如果我错过任何导入功能,请告诉我,如果上述语法不正确,请更正我。学习斯卡拉。回复非常感谢。 错误:错误:未找到:值SQLContext        val sqlContext = SQLContext(sc)

1 个答案:

答案 0 :(得分:0)

目前的做事方式是这样的:

val df = spark.read.json("/somepath/testweet.json")
df.createOrReplaceTempView("table1")
var df1 = spark.sql("select text from table1")
df1.printSchema()
df1.show()

如果没有先使用val关键字声明df1或df2,则无法使用它们。 有关详细信息,请参阅此处:https://spark.apache.org/docs/latest/sql-programming-guide.html