Java教程

explode炸裂函数

本文主要是介绍explode炸裂函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package SparkSQL.fun

import org.apache.spark.SparkConf
import org.apache.spark.sql.SparkSession

/**
 * _1  _2
 * zs  60-70-90
 * ls  70-80-90
 * 求zs和ls的总成绩  平均成绩
 * _1  _2
 * zs  60
 * zs  70
 * zs  90
 * ls  70
 * ls  80
 * ls  90
 */
object ExplodeCode {
  def main(args: Array[String]): Unit = {
    val sparkConf = new SparkConf().setAppName("func").setMaster("local[*]")
    val ss = SparkSession.builder().config(sparkConf).getOrCreate()

    val frame = ss.createDataFrame(Array(
      ("zs", "60-70-90"),
      ("ls", "70-80-90")
    ))

    frame.createTempView("score")
    frame.printSchema()

    val frame1 = ss.sql("select score._1, ss.tt from score lateral view explode(split(_2, '-')) ss as tt")
    frame1.show()

    ss.stop()
  }
}
这篇关于explode炸裂函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!