current_date
是一个系统函数,返回当前事务开始时的 date
。
current_date
在 PostgreSQL 6.3 中添加。
用法
current_date → date
尽管名称如此,current_date
返回当前事务开始的日期,而不是函数实际执行的日期(这可以通过 clock_timestamp()
获取)。
请注意,current_date
不能作为 current_date()
调用。
更改历史记录
- PostgreSQL 6.2
- 添加 (提交 f10b6392)
示例
current_date
的基本执行示例
postgres=# SELECT current_date; current_date -------------- 2021-06-17 (1 row)
current_date
将始终报告与 transaction_timestamp()
相同的日期,并且(如果在隐式事务中执行)与 statement_timestamp()
相同的日期
postgres=# SELECT current_date, transaction_timestamp(), statement_timestamp(), clock_timestamp()\gx -[ RECORD 1 ]---------+------------------------------ current_date | 2021-06-19 transaction_timestamp | 2021-06-19 08:48:18.386946+09 statement_timestamp | 2021-06-19 08:48:18.386946+09 clock_timestamp | 2021-06-19 08:48:18.387096+09
在实践中,所有这些函数返回的日期通常都相同,但对于在一天结束附近开始的事务,当然可能有所不同。
变体 current_date()
无效
postgres=# SELECT current_date(); ERROR: syntax error at or near "(" LINE 1: SELECT current_date(); ^