Spark Sql教程(3)———DataFrame执行Sql查询

spark sql教程
Spark Sql教程(1)————创建sparkSession
Spark Sql教程(2)———DataFrame基本操作
Spark Sql教程(3)———DataFrame执行Sql查询
Spark Sql教程(4)———全局临时表和局部临时表
Spark Sql教程(5)———dataset和dataframe
Spark Sql教程(6)———如何由RDD转化为DataFrame
Spark Sql教程(7)———Parquet文件
Spark Sql教程(8)———读取形式多样的文件类型

我们上一篇文章展示了利用dataframe自带的api进行操作,本文讲解利用sql进行查询。SparkSession提供了直接执行sql查询的接口,其步骤为注册临时表,然后进行sql查询

package sparksql

import org.apache.spark.sql.SparkSession

object SparkSqltest1 {

  def main(args: Array[String]): Unit = {
    //创建sparksession
    val   sparkSession=SparkSession.builder().appName("test1").master("local[*]")getOrCreate()
    import  sparkSession.implicits._
    //读取文件形成dataframe
    val   df=sparkSession.read.json("hdfs://192.168.1.181:9000/json/data.json")
    val   tableperson=df.createTempView("person")    //注册临时表
    sparkSession.sql("select  *  from  person").show()   //利用sql进行查询
    sparkSession.sql("select name from person").show()


    sparkSession.stop()
  }
}

结果为:

+---+--------+
|age|    name|
+---+--------+
|  1|zhangsan|
|  2|    lisi|
+---+--------+

+--------+
|    name|
+--------+
|zhangsan|
|    lisi|
+--------+

你可能感兴趣的:(Spark Sql教程(3)———DataFrame执行Sql查询)