spark3.0教程-SparkSQL:不创建表,直接查询(适合json)

说明

使用 SparkSQL 执行 SQL 时,需要先创建表、视图,然后才能查询,有些繁琐,可以不创建表,直接查询

适用于 json 格式文件,因为本身有列名、列类型

关键代码

val res: DataFrame = spark.sql("select id,ele_num from json.`文件路径`")

注意:

文件路径必须由

`` (tab前面的符号)

括起来,否则报错

例子

package read

import org.apache.spark.SparkConf
import org.apache.spark.sql.{DataFrame, SparkSession}

object Std_select_json {
  def main(args: Array[String]): Unit = {
    val sc = new SparkConf().setMaster("local[*]").setAppName("std")
    val spark = SparkSession.builder().config(sc).getOrCreate()

    val res: DataFrame = spark.sql("select id,ele_num from json.`cdz.json`")
    res.printSchema()
    res.show()
    spark.close()
  }
}

原文出处:/show_1IX4KKegSzeQ.html