初始化Spark Sql
package pbcp_2023.clear_data import org.apache.spark.SparkConf import org.apache.spark.sql.SparkSession import org.apache.spark.sql.functions.{current_date, current_timestamp} object twe_2 { def main(args: Array[String]): Unit = { //新建SparkConf val con = new SparkConf().setMaster("local[*]").setAppName("one") //设置权限 System.setProperty("HADOOP_USER_NAME", "root") //新建Spark Sql val sc = new SparkSession.Builder() .config(con) .enableHiveSupport() .getOrCreate() import sc.implicits._ val list = List("date").toDF() } }
1.current_date和current_timestamp
current_date:取得当前日期
current_timestamp: 取得当期时间日期
import sc.implicits._ val list = List("date").toDF() // current_date 当前日期 // current_timestamp 当前时间日期 list.withColumn("current_date(日期)",current_date()) .withColumn("current_timestamp",current_timestamp())
2.获取各种时间格式
- current_timestamp(): 这个函数用于获取当前的日期和时间戳。
- year(col("local_date")): 这个函数会提取出"local_date"列中的年份。
- month(col("local_date")): 这个函数会提取出"local_date"列中的月份。
- quarter(col("local_date")): 这个函数会根据"local_date"列中的日期信息,将日期划分为哪个季度。
- weekofyear(col("local_date")): 这个函数会提取出"local_date"列中该年度的第几周。
- dayofmonth(col("local_date")): 这个函数会提取出"local_date"列中该月的第几天。
- dayofyear(col("local_date")): 这个函数会提取出"local_date"列中该年的第几天。
- hour(col("local_date")): 这个函数会提取出"local_date"列中的小时数。
- minute(col("local_date")): 这个函数会提取出"local_date"列中的分钟数。
- second(col("local_date")): 这个函数会提取出"local_date"列中的秒数。
3.时间格式之间的转换--from_unixtime 和 unix_timestamp
函数:
list2.withColumn("new_date",from_unixtime(unix_timestamp("[要转换的列名]","[要转换的列的格式]"),"[要转换为的格式]").as("date") ).show()
1.from_unixtime :函数通常用于将Unix时间戳转换为日期和时间格式。它接受一个Unix时间戳作为输入,并返回一个表示特定日期和时间的字符串。
2.unix_timestamp:函数通常用于将日期和时间转换为Unix时间戳。它接受一个日期和时间作为输入,并返回一个表示该日期和时间的Unix时间戳。理解是先用unix_timestamp将指点格式转换为时间戳,再用from_unixtime将时间戳转换为你想要的时间格式!所以这两个一般是配合使用的
实例:
//加入题目要求将 yyyyMMdd 格式数据转换成 yyyy-MM-dd HH:mm:dd val list2 = List("20231125").toDF("date") //初始化列 list2.withColumn("new_date",from_unixtime(unix_timestamp(col("date"),"yyyyMMdd"),"yyyy-MM-dd HH:mm:ss").as("date") ) .show()
猜你喜欢
- 14天前(希尔顿2021活动)希尔顿集团618盛夏大促开启
- 14天前(江西启动“唱游江西”计划)江西启动“唱游江西”计划
- 14天前(哈弗h9优惠9万是真的吗)热浪来袭,哈弗H9超值补贴火热加码
- 14天前(七尚酒店百度百科)Lohkah七尚酒店首度开创充满新知的闽地研学旅程
- 14天前(瑞虎7plus2021款)重塑10万级SUV价值标杆,全新一代瑞虎7PLUS冠军版给你惊喜
- 14天前(“清透会呼吸”轻松拿捏春日出游氛围感)“清透会呼吸”轻松拿捏春日出游氛围感
- 14天前(中国旅游集团旗下酒店)中国旅游集团酒店控股有限公司战略投资雅阁酒店集团
- 14天前(大连aaaaa景区)辽宁大连A级旅游景区应急救护水平整体跃升
- 14天前(内蒙古交通旅游图)内蒙古着力提升交通与旅游服务水平
- 14天前(“三天跨两城”催生租车新需求,神州租车清明跨城订单同比增长416%)“三天跨两城”催生租车新需求,神州租车清明跨城订单同比增长416%
网友评论
- 搜索
- 最新文章
- (2020广州车展哈弗)你的猛龙 独一无二 哈弗猛龙广州车展闪耀登场
- (哈弗新能源suv2019款)智能科技颠覆出行体验 哈弗重塑新能源越野SUV价值认知
- (2021款全新哈弗h5自动四驱报价)新哈弗H5再赴保障之旅,无惧冰雪护航哈弗全民电四驱挑战赛
- (海南航空现况怎样)用一场直播找到市场扩张新渠道,海南航空做对了什么?
- (visa jcb 日本)优惠面面俱到 JCB信用卡邀您畅玩日本冰雪季
- (第三届“堡里有年味·回村过大年”民俗花灯会活动)第三届“堡里有年味·回村过大年”民俗花灯会活动
- (展示非遗魅力 长安启源助力铜梁龙舞出征)展示非遗魅力 长安启源助力铜梁龙舞出征
- (阿斯塔纳航空公司)阿斯塔纳航空机队飞机数量增至50架
- (北京香港航班动态查询)香港快运航空北京大兴新航线今日首航
- (我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉)我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉
- 热门文章