database - 如何使用 PostgreSQL 以分钟为单位获取时间戳

标签 database postgresql

当我在我的网站上发送表单时,插入查询使用函数 now() 将当前日期保存在我的数据库中。

现在,我正在尝试以分钟格式获取此专栏以计算我需要的其他想法,但我不知道该怎么做。

例如,我有这个:

“2013-05-08 08:30:00”

我想要这个(现在是 8.50):

“20” <- 分钟

谢谢

最佳答案

好的,假设您有一个带有时间戳的表:

CREATE TABLE ex (t timestamp);
INSERT INTO ex VALUES ('2013-05-08 8:30'::timestamp);

并且您想要列 tnow() 之间的分钟差值。您可以使用 extract 函数获取它:

SELECT extract(epoch from (now() - ex.t)) / 60 FROM ex;

epoch 是从 datetimestamp 类型的“epoch”开始的秒数,但不仅仅是秒数在 interval 类型的间隔中。将它除以 60 就可以得到你想要的(如果你想要整数分钟,只需 trunc 即可。)

关于database - 如何使用 PostgreSQL 以分钟为单位获取时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16434425/

相关文章:

mysql - 这是用唯一值填充维度表的适当方法吗?

php - 使用 PHP 编写程序时遇到问题

ruby - 如何每小时执行一个函数并将结果添加到 Rails 中的数据库中?

java - 如何使用 spring,JPARepository 将多个条目插入到 postgres

postgresql - 提高 PARTITION BY 性能?

ruby-on-rails - Dockerized 应用程序适用于带有 PSQL 的 Rails,但数据库容器不工作

php - 在 MySQL 中存储翻译的更好方法

database - 无法将 csv 导入 postgres(在位置 4194303 处发现意外字符)

swift - Vapor,使用 PostgreSQL 流畅地保存/创建复杂模型

PHP 连接到 Postgresql 错误