PostgreSQL 教程: make_time 函数

九月 21, 2024

摘要:在本教程中,您将学习如何使用 PostgreSQL make_time()函数,从小时值、分钟值和秒值创建时间值。

目录

PostgreSQL make_time 函数简介

make_time()函数允许您根据小时值、分钟值和秒值创建时间值。

下面是make_time()函数的语法:

MAKE_TIME ( hour int, min int, sec double precision )  time

在此语法中:

  • hour:时间的小时部分。小时的有效范围为 0 到 23。0 表示午夜(00:00 AM),24 表示中午。
  • min:时间的分钟部分。分钟的有效范围是 0 到 59。
  • sec:一分钟内的秒值。其有效范围是从 0 到59.999999

MAKE_TIME()函数会返回由 hour、min 和 sec 构造的时间值。

如果您使用的 hour、min 和 sec 值无效,该函数将发出错误。

PostgreSQL make_time 函数示例

让我们来探索一些使用make_time()函数的示例。

1) 基础 make_time 函数示例

以下示例使用make_time()函数,从小时值、分钟值和秒值构造一个时间值22:30:45

SELECT MAKE_TIME(22,30,45);

输出:

 make_time
-----------
 22:30:45
(1 row)

以下示例尝试使用无效的小时值、分钟值和秒值来构造时间,结果发生了错误:

SELECT MAKE_TIME(25,30,45);

错误:

ERROR:  time field value out of range: 25:30:45

2) 带字符串参数使用 make_time 函数

即使小时和分钟参数的类型是整数,而秒值是双精度,您也可以将字符串参数传递给make_time()函数。

在背后,只要转换的结果在有效范围内,该函数就会将这些字符串参数隐式转换为正确的类型。

SELECT MAKE_TIME('8', '30', '59.999999');

输出:

    make_time
-----------------
 08:30:59.999999
(1 row)

总结

使用make_time()函数从小时值、分钟值和秒值创建时间值。

了解更多

PostgreSQL 教程:日期函数

PostgreSQL 文档:时间/日期函数和操作符