【发布时间】:2020-04-09 22:23:07
【问题描述】:
SQL: DATEDIFF(mi, ClockInUTC_End,ClockInUTC_Snd) TimeinMinutes
我想在 PySpark SQL 中替代它。 spark.sql("")
【问题讨论】:
标签: apache-spark pyspark apache-spark-sql bigdata pyspark-sql
SQL: DATEDIFF(mi, ClockInUTC_End,ClockInUTC_Snd) TimeinMinutes
我想在 PySpark SQL 中替代它。 spark.sql("")
【问题讨论】:
标签: apache-spark pyspark apache-spark-sql bigdata pyspark-sql
您可以使用 unix_timestamp 函数来执行此操作,该函数基本上转换为 UTC 中的 UNIX 纪元值。请参考以下代码。
spark.sql("""
SELECT "2019-12-18 06:30:00" AS ClockInUTC_End,
"2019-12-18 06:00:00" AS ClockInUTC_Snd,
CAST((unix_timestamp("2019-12-18 06:30:00", "yyyy-MM-dd HH:mm:ss")
- unix_timestamp("2019-12-18 06:00:00", "yyyy-MM-dd HH:mm:ss"))/60 AS INT) AS Diff_In_Minutes
""").show(20,False)
Output :
+-------------------+-------------------+---------------+
|ClockInUTC_End |ClockInUTC_Snd |Diff_In_Minutes|
+-------------------+-------------------+---------------+
|2019-12-18 06:30:00|2019-12-18 06:00:00|30 |
+-------------------+-------------------+---------------+
【讨论】: