• 数据处理生产环境_获取当前日期的前一天日期


    需求描述:

    我现在有一个dataframe,名为dfin,样例数据如下

    a1_id_lxha2_PHtime
    比亚迪_汉1232023-11-15 12:12:23
    比亚迪_汉1252023-11-15 13:14:51
    比亚迪_汉1232023-11-15 12:13:23
    比亚迪_汉1262023-11-16 14:12:34
    比亚迪_秦2312023-11-15 14:12:28
    比亚迪_秦2342023-11-16 16:12:51
    比亚迪_秦2312023-11-15 12:13:51
    比亚迪_秦2312023-11-15 12:14:51

            现在我每天接入实时数据,保存在库里,时间为最近时间的两天数据,比如今天是20号,数据库里存的数据就是19号,20号的数据,现在我要进行跑批任务,将数据库里的19号的数据离线跑批进行部分逻辑处理后,增加的存入

    代码

    1. import org.apache.spark.sql.SparkSession
    2. import org.apache.spark.sql.functions._
    3. import java.text.SimpleDateFormat
    4. import java.util.Date
    5. val spark = SparkSession.builder.appName("DateSubtraction").getOrCreate()
    6. import spark.implicits._
    7. //测试data,实际生产中我们接前序dataframe
    8. //20231121_lxh
    9. //https://blog.csdn.net/qq_52128187?type=blog
    10. val data = Seq(
    11. ("比亚迪_汉", 123, "2023-11-15 12:12:23"),
    12. ("比亚迪_汉", 125, "2023-11-15 13:14:51"),
    13. ("比亚迪_汉", 123, "2023-11-15 12:13:23"),
    14. ("比亚迪_汉", 126, "2023-11-16 14:12:34"),
    15. ("比亚迪_秦", 231, "2023-11-15 14:12:28"),
    16. ("比亚迪_秦", 234, "2023-11-16 16:12:51"),
    17. ("比亚迪_秦", 231, "2023-11-15 12:13:51"),
    18. ("比亚迪_秦", 231, "2023-11-15 12:14:51")
    19. )
    20. //以此为例
    21. val df = data.toDF("a1", "a2", "time")
    22. val dateFormat = new SimpleDateFormat("yyyy-MM-dd")
    23. val currentDate = dateFormat.format(new Date())
    24. val dfinWithNewColumn = df.withColumn("date_subtracted", date_sub(to_date($"time"), 1))
    25. dfinWithNewColumn.show()
    26. //后面在处理的话直接转为创建临时表或者再进行后续操作即可
    27. //https://blog.csdn.net/qq_52128187?type=blog

    输出结果

    a1a2timedate_subtracted
    比亚迪_汉1232023-11-15 12:12:232023-11-14 12:12:23
    比亚迪_汉1252023-11-15 13:14:512023-11-14 13:14:51
    比亚迪_汉1232023-11-15 12:13:232023-11-14 12:13:23
    比亚迪_汉1262023-11-16 14:12:342023-11-15 14:12:34
    比亚迪_秦2312023-11-15 14:12:282023-11-14 14:12:28
    比亚迪_秦2342023-11-16 16:12:512023-11-15 16:12:51
    比亚迪_秦2312023-11-15 12:13:512023-11-14 12:13:51
    比亚迪_秦2312023-11-15 12:14:512023-11-14 12:14:5
  • 相关阅读:
    【kafka实战】02 kafka生产者和消费者示例
    中文关键字提取-TextRank
    路径规划入门
    详解java重定向和转发的区别
    do-exercise-淘宝网店
    ESDB论文重点整理
    [C#]使用C#部署yolov8的目标检测tensorrt模型
    4-4网络层-IPv6
    微服务框架 SpringCloud微服务架构 18 操作索引库 18.3 查询、删除、修改索引库
    计算机视觉(Computer Vision, CV)是什么?
  • 原文地址:https://blog.csdn.net/qq_52128187/article/details/134503196