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()
}
}
posted @   jsqup  阅读(155)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示