parse_duration
parse_duration(value: string) -> duration
Given a string describing the duration between two points in time, convert it to a duration.
Example duration strings: "2h 30m", "-1.5m", "22µs"
The string should be of the form: <optional minus sign> (<time> <interval>)+. Negative durations are specified by prepending a minus sign (like "-2h30m"). <time> must be a decimal. <interval> must be one of the following (case-insensitive):
| Interval | Abbreviations/Variations |
|---|---|
week | w, wk, weekofyear, woy, wy, weeks |
day | d, dd, days, daysofmonth |
hour | h, hh, hr, hrs, hours |
minute | m, mi, min, mins, minutes |
second | s, sec, secs, seconds |
millisecond | ms, msec, msecs, milliseconds |
microsecond | us, µs, usec, usecs, µsec, µsecs, microseconds |
nanosecond | ns, nsec, nanosec, nsecond, nanosec, nseconds, nanoseconds |
Domain
This is a scalar function (calculates a single output value for a single input row).
Categories
Examples
make_col dur:parse_duration(durstr)
Assuming there's a string input column durstr with duration strings, outputs the corresponding duration objects (which is represented as an integer number of nanoseconds).
| durstr | dur |
|---|---|
| 1.5m | 90000000000 |
| 22µs | 22000 |
| 2h30m | 9000000000000 |
| 2 hours 3 minutes 4 seconds | 7384000000000 |
| 42 jupiters 1 sun | NULL |
| 42x24y | NULL |
| 42 | NULL |
| w | NULL |
Updated 8 days ago