MariaDB 函数

MariaDB TIME_FORMAT() 函数按照格式掩码指定的方式格式化时间或日期时间值。此函数仅格式化时间或日期时间值中的小时、分钟、秒和微秒。

语法

TIME_FORMAT(datetime, format_mask) 

参数

datatime必填。 指定要格式化的时间或日期时间值。
format_mask必填。 指定应用于日期时间的格式。 以下是此参数的选项列表。 它可以用于多种组合。

Value描述
%f微秒(000000 到 999999)
%H小时(一般为 00 到 23,但可以更高)
%h小时(00 到 12)
%h小时(00 到 12)
%I小时(00 到 12)
%i分钟(00 到 59)
%pAM 或 PM
%r12 小时 AM 或 PM 格式的时间 (hh:mm:ss AM/PM)
%S秒(00 到 59)
%s秒(00 到 59)
%T24 小时格式的时间 (hh:mm:ss)

返回值

返回由格式掩码指定的格式化时间或日期时间值。

示例 1:

下面的示例显示了 的用法TIME_FORMAT() 函数。

SELECT TIME_FORMAT('16:38:42', '%H %i %s');
Result: '16 38 42'

SELECT TIME_FORMAT('16:38:42', '%h:%i:%s %p');
Result: '04:38:42 PM'

SELECT TIME_FORMAT('16:38:42', '%h:%i %p');
Result: '04:38 PM'

SELECT TIME_FORMAT('16:38:42.000123', '%r');
Result: '04:38:42 PM'

SELECT TIME_FORMAT('16:38:42.000123', '%T');
Result: '16:38:42'

SELECT TIME_FORMAT('16:38:42.000123', '%f');
Result: '000123'

SELECT TIME_FORMAT('2018-08-18 16:38:42.000004', '%h:%i:%s.%f');
Result: '04:38:42.000004' 

示例 2:

考虑一个名为 Orders 的数据库表,其中包含以下记录:

OrderQuantityPriceOrderTime
1001.582017-08-18 10:38:42.000004
1201.61The DateTime is 2018-03-23 07:14:16
1251.782018-09-12 05:25:56
501.802019-01-16 11:52:05
2001.722020-02-06 09:31:34.006789

在下面的查询中,TIME_FORMAT() 函数用于格式化 OrderTime 列的日期时间值:

SELECT *, 
TIME_FORMAT(OrderTime, '%h:%i %p') AS TIME_FORMAT_Value
FROM Orders; 

这将产生类似于以下内容的结果:

OrderQuantityPriceOrderTime
1001.582017-08-18 10:38:42
1201.612018-03-23 07:14:16
1251.782018-09-12 05:25:56
501.802019-01-16 11:52:05
2001.722020-02-06 09:31:34