import org.apache.spark.sql.SparkSession
// 创建SparkSession
val spark = SparkSession.builder()
.appName("Spark SQL Example")
.getOrCreate()
// 引入隐式转换
import spark.implicits._
// 创建DataFrame
val dataFrame = Seq(
(1, "John Doe", "M", 21),
(2, "Jane Doe", "F", 19),
(3, "Steve Smith", "M", 22)
).toDF("id", "name", "gender", "age")
// 创建视图
dataFrame.createOrReplaceTempView("people")
// 执行SQL查询
val sqlDF = spark.sql("SELECT * FROM people WHERE age >= 21")
// 展示查询结果
sqlDF.show()
// 停止SparkSession
spark.stop()
这段代码首先创建了一个SparkSession,然后通过隐式转换将RDD转换为DataFrame,并创建了一个临时视图,之后通过Spark SQL执行了一个简单的查询,并展示了查询结果。最后,它停止了SparkSession。这个例子展示了如何在Spark应用程序中使用Spark SQL进行数据查询。