Time Difference
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I am looking to find the delta between below timestamps (string format)
Example 1:
2022-07-01 12:19:15.700
2022-07-01 12:19:15.800
The answer should be 0.1 sec as the output.
Example 2:
2022-07-01 12:19:15.700
2022-07-01 12:19:20.700
The answer should be 5.0 sec as the output.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hello @Alteryx_Geek
I think one of the solutions of the following post might help you:
Hope it helps!!!
Regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
@Andreina - Thanks for sharing the post, I tried this method but it doesn't work when there is vertical Timestamp column like below,
2022-07-05 12:17:48.003
2022-07-05 12:17:52.066
2022-07-05 12:19:02.919
2022-07-05 12:19:18.586
2022-07-05 12:19:34.857
2022-07-05 12:20:04.996
2022-07-01 12:21:30.717
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
@binuacs / @OllieClarke - Any idea ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
@Alteryx_Geek Can you provide the expected output for the above DateTime values?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
how about this:
IF
Tonumber(Substring([Time],19))-ToNumber(substring([row-1:Time],19))>=0.5
THEN
datetimediff(LEFT([time],19),LEFT([row-1:time],19),'seconds')+1
ELSE
datetimediff(LEFT([time],19),LEFT([row-1:time],19),'seconds')
ENDIF
So we add 1 second if the millisecond difference is more than 0.5
Hope that helps,
Ollie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hello @Alteryx_Geek ,
Maybe with a combination of some MultiRow and Formula transformations you can get what you need. Here you have an example that might help you:
Try to calculate Time Differences betweeen rows and then make the transformations in order to get days, minutes, secs and millisecs.
Check the workflow that I attached.
Hope it helps.
Andreina
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hey @Alteryx_Geek
Apologies, I'd misread your actual question. This I think gives what you want:
ROUND(
datetimediff(LEFT([time],19),LEFT([row-1:time],19),'seconds')
+
tonumber(substring([time],19))-tonumber(substring([row-1:time],19))
,0.1)
It outputs the number of seconds between a row and the row above to 0.1 of a second.
Hope that helps,
Ollie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
@OllieClarke - Apologize for late reply. Thanks for sharing Ollie. looks like your output is coming along but when you have answer in msec, its rounding off the number.
As highlighted below, the output should have been "0.11" instead of 1
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
@binuacs - I just share the expected output in above snap.
