DATE_DIFF
Computes the difference between two timestamps.
Syntax
DATE_DIFF(UNIT, TIMESTAMP1, TIMESTAMP2)Arguments
UNIT
UNITType: string
The unit of time to return.
It can be one of the following:
- year
- quarter
- month
- week
- day
- hour
- minute
- second
- millisecond
TIMESTAMP1
TIMESTAMP1Type: timestamp
The time to subtract from TIMESTAMP2.
TIMESTAMP2
TIMESTAMP2Type: 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
