tohour(X;Y)

Convert a string, date+time, or time to a time value in the form HH. (Available as of version 18.04)

Syntax

tohour(X;Y)

Input

Argument Type Description
X any A scalar value or the name of a column containing date-related values
Valid values can be of the form:
  • string
  • date+time
  • time
Y text An optional argument indicating how to display the results.

Valid values are:

  • 'allow24' - Allow 24-hour time, such as the string '24:00:00'
  • 'forbid24' - Forbid 24-hour time and return an error when attempting to convert 24-hour time
  • 'rollover' - Allow 24-hour time, but convert times 24:00:00 and over, so that '24:00:00' is converted to 0 and '36:13:14' is converted to 121314.

tohour(X;Y) can take a variety of input values. It allows a date+time value, discarding the date portion.

Return Value

Returns the integer value corresponding to the hour portion of the time-related value given as input.

For more information about date formats, see Dates and time.

If the input values are not in one of the supported formats listed above, the function returns an erroneous or illogical output.

Example

The following example converts strings containing times to an integer containing the hour portion only. The Y argument is 'rollover', so that it accepts any positive values and rolls over the time that is 24:00:00 and above.

<table cols="time_text">
"24:00:00"
"36:13:14"
"11:45:10"
"14:56:03" 
</table>

<willbe name="hour_only" value="tohour(time_text; 'rollover')"/>