如何在postgreSQL中获得精确的日期差异?
Posted
技术标签:
【中文标题】如何在postgreSQL中获得精确的日期差异?【英文标题】:How to get exact date difference in days in postgreSQL? 【发布时间】:2021-12-30 10:53:08 【问题描述】:我试图在PostgreSQL
的几天内得到两个日期之间的差异。但我得到了预期的确切值。
例如,UTC 时间现在是2021-12-30 10:50:00
。
如果我的时间戳超过一天。比方说,2021-12-29 09:00:00
距离现在超过 24 小时。
所以,如果我选择(NOW()::DATE - '2021-12-29 09:00:00'::DATE)<=1;
,它应该给我false
。但它给了我true
;但是日期差异超过 24 小时不是 2 天吗?我错过了什么?
我也试过:DATE_PART('day', NOW()::timestamp - DATE_OF_RECORDING::timestamp)
但结果相同。
【问题讨论】:
::DATE
表示您跳过时间戳的 TIME 部分。 IE。您正在执行“2021-12-30”-“2021-12-29”,即 1 天。
但我也尝试了时间戳。正如刚才提到的。结果相同。
【参考方案1】:
(NOW() - timestamp '2021-12-29 09:00:00') < interval'1' day
https://dbfiddle.uk/?rdbms=postgres_14&fiddle=835db28ba753587f5ab552d7537ba3e3
【讨论】:
以上是关于如何在postgreSQL中获得精确的日期差异?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 TIMESTAMPDIFF 获取 PostgreSQL 中 2 个日期之间的差异? [复制]
如何获得 PostgreSQL 中的两个平均值之间的差异,平均值在列上,最终表按两列分组?
如何在 android 中获得两个日期之间的差异?,尝试所有事情并发布