PostgreSQL localtimestamp() 函数使用指南
PostgreSQL localimestamp() 函数返回所属的事务开始的系统日期和时间。
localtimestamp() 语法
这是 PostgreSQL localtimestamp() 函数的语法:
localtimestamp -> TIMESTAMP
或者
localtimestamp(precision) -> TIMESTAMP
参数
precision- 必需的。 它是一个整数,指示了小数秒的位数。
返回值
PostgreSQL localtimestamp() 函数返回该函数所属的事务开始时的系统日期和时间。
也就是说同一个语句中的 localtimestamp() 函数返回值相同,这点与 clock_timestamp() 不同。
不同于 current_timestamp(),localtimestamp() 函数返回的系统日期和时间不带时区信息。
localtimestamp() 示例
本示例展示了如何使用 PostgreSQL localtimestamp() 函数获取当前的日期和时间。
SELECT localtimestamp;
localtimestamp
----------------------------
2022-05-16 20:56:24.432821或者使用如下语句来限制小数秒的位数:
SELECT
localtimestamp(0),
localtimestamp(1),
localtimestamp(2),
localtimestamp(3),
localtimestamp(4),
localtimestamp(5),
localtimestamp(6);
localtimestamp | 2022-05-16 20:56:37
localtimestamp | 2022-05-16 20:56:36.7
localtimestamp | 2022-05-16 20:56:36.71
localtimestamp | 2022-05-16 20:56:36.707
localtimestamp | 2022-05-16 20:56:36.7073
localtimestamp | 2022-05-16 20:56:36.70727
localtimestamp | 2022-05-16 20:56:36.707265localtimestamp() 函数返回的是所属的事务开始的时间,而不是函数执行时刻的时间。请看下面的示例:
SELECT
localtimestamp,
pg_sleep(1),
localtimestamp;
-[ RECORD 1 ]--+---------------------------
localtimestamp | 2022-05-16 20:56:52.244352
pg_sleep |
localtimestamp | 2022-05-16 20:56:52.244352这里,即使我们在两个 localtimestamp 函数使用了 pg_sleep(1) 将执行暂停了 1 秒,两个 localtimestamp 函数返回的时间仍然是相同的。