pg_sleep_until()
是一个系统函数,用于使连接的后端休眠到指定时间。
pg_sleep_until()
在 PostgreSQL 9.4 中添加。
用法
pg_sleep_until ( timestamp with time zone ) → returns NULL
该 文档 指出了以下注意事项
- 最小的休眠间隔取决于平台,通常为
0.01
秒 - 休眠延迟将始终至少为指定值,但在某些情况下可能会更长
更改历史记录
- PostgreSQL 9.4
- 添加 (提交 760c770f)
示例
pg_sleep_until()
的基本用法
postgres=# SELECT clock_timestamp(); clock_timestamp ------------------------------- 2021-02-02 13:21:34.778857+01 (1 row) Time: 0.291 ms postgres=# SELECT pg_sleep_until('2021-02-02 13:22'); pg_sleep_until ---------------- (1 row) Time: 14710.314 ms (00:14.710)
如果指定过去的时间点,则不会执行休眠
postgres=# SELECT pg_sleep_until('yesterday'); pg_sleep_until ---------------- (1 row) Time: 0.310 ms
参考
- PostgreSQL 文档: 延迟执行
有用链接
- SELECT pg_sleep_until('#800Monies'); - Andreas 'ads' Scherbaum 于 2020 年 1 月发布的博文