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.707265
localtimestamp()
函数返回的是所属的事务开始的时间,而不是函数执行时刻的时间。请看下面的示例:
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
函数返回的时间仍然是相同的。