DATE_DIFF
Computes the difference between two timestamps.
Syntax
DATE_DIFF(UNIT, TIMESTAMP1, TIMESTAMP2)
Arguments
UNIT
UNIT
Type: string
The unit of time to return.
It can be one of the following:
year
quarter
month
week
day
hour
minute
second
millisecond
TIMESTAMP1
TIMESTAMP1
Type: timestamp
The time to subtract from TIMESTAMP2
.
TIMESTAMP2
TIMESTAMP2
Type: timestamp
The time TIMESTAMP1
is subtracted from.
Returns
Type: bigint
TIME2 - TIME1
expressed in terms of UNIT
.
Examples
UNIT
TIMESTAMP1
TIMESTAMP2
Output
day
2001-08-22 03:04:05.321
2001-08-23 03:04:05.321
1
year
2001-08-22 03:04:05.321
2006-08-22 03:04:05.321
5
year
2006-08-22 03:04:05.321'
2001-08-22 03:04:05.321
-5
second
2001-08-22 03:04:05.321
2001-08-22 03:04:35.321
30
quarter
2001-08-22 03:04:05.321
2001-11-22 03:04:05.321
1
quarter
2001-08-22 03:04:05.321
2001-08-22 03:04:05.321
0
year
2001-08-22 03:04:05.321
null
null
Transformation job example
SQL
CREATE JOB function_operator_example
ADD_MISSING_COLUMNS = true
AS INSERT INTO default_glue_catalog.upsolver_samples.orders_transformed_data
MAP_COLUMNS_BY_NAME
SELECT
"$event_timestamp",
"$commit_time",
DATE_DIFF('second', "$event_timestamp", "$commit_time") AS time_diff
FROM default_glue_catalog.upsolver_samples.orders_raw_data
WHERE $commit_time BETWEEN run_start_time() AND run_end_time()
LIMIT 1;
Query result
$event_timestamp
$commit_time
time_diff
2022-08-19 20:20:00.000
2022-08-19 20:21:00.000
60
Last updated