MySQL HOUR() 函数返回给定时间或日期时间值的小时部分。由于时间值的范围是"-838:59:59"到"838:59:59",因此该函数可以返回 0 到 838(大于 23)之间的值。
语法
HOUR(datetime)
参数
datetime | 必填。 指定从中提取小时的时间或日期时间值。 |
返回值
返回给定的时间或日期时间值小时部分。
示例 1:
下面的示例显示 HOUR() 函数的用法。
mysql> SELECT HOUR('2018-08-18');
Result: 0
mysql> SELECT HOUR('2018-08-18 10:38:42');
Result: 10
mysql> SELECT HOUR('2018-08-18 10:38:42.000004');
Result: 10
mysql> SELECT HOUR("838:38:42");
Result: 838
mysql> SELECT HOUR(CURDATE());
Result: 11
示例 2:
考虑一个名为 Orders 的数据库表,其中包含以下记录:
OrderQuantity | Price | OrderTime |
---|---|---|
100 | 1.58 | 2017-08-18 10:38:42 |
120 | 1.61 | 2018-03-23 07:14:16 |
125 | 1.78 | 2018-09-12 05:25:56 |
50 | 1.80 | 2019-01-16 11:52:05 |
200 | 1.72 | 2020-02-06 09:31:34 |
下面给出的语句可用于获取OrderTime 列记录的小时部分:
SELECT *, HOUR(OrderTime) AS HOUR_Value FROM Orders;
这将产生如下所示的结果:
OrderQuantity | Price | OrderTime | HOUR_Value |
---|---|---|---|
100 | 1.58 | 2017-08-18 10:38:42 | 10 |
120 | 1.61 | 2018-03-23 07:14:16 | 7 |
125 | 1.78 | 2018-09-12 05:25:56 | 5 |
50 | 1.80 | 2019-01-16 11:52:05 | 11 |
200 | 1.72 | 2020-02-06 09:31:34 | 9 |