Skip to content

HOUR()

Function Description

Returns the hour of time. For time values, the return value range is 0 to 23. However, the range of time values ​​is actually much larger, so HOUR can return values ​​greater than 23. If time is NULL, NULL is returned.

Function Syntax

> HOUR(time)

Parameter definition

Parameters Description
time Required parameters. Value indicating a time or timestamp.

Example

drop table if exists t1;
create table t1(a datetime, b timestamp);
insert into t1 values("2022-07-01", "2011-01-31 12:00:00");
insert into t1 values("2011-01-31 12:32:11", "1979-10-22");
insert into t1 values(NULL, "2022-08-01 23:10:11");
insert into t1 values("2011-01-31", NULL);
insert into t1 values("2022-06-01 14:11:09","2022-07-01 00:00:00");
insert into t1 values("2022-12-31","2011-01-31 12:00:00");
insert into t1 values("2022-06-12","2022-07-01 00:00:00");

mysql> select hour(a),hour(b) from t1;
+----------------------+
| hour(a) | hour(b) |
+----------------------+
| 0 | 12 |
| 12 | 0 |
| NULL | 23 |
| 0 | NULL |
| 14 | 0 |
| 0 | 12 |
| 0 | 0 |
+----------------------+
7 rows in set (0.00 sec)

mysql> select * from t1 where hour(a)>hour(b);
+------------------------------------------------------------------------------------------------------------------------------
| a | b |
+------------------------------------------------------------------------------------------------------------------------------
| 2011-01-31 12:32:11 | 1979-10-22 00:00:00 |
| 2022-06-01 14:11:09 | 2022-07-01 00:00:00 |
+------------------------------------------------------------------------------------------------------------------------------
2 rows in set (0.01 sec)