如何在 postgresql 中为日期添加加号和毫秒?

Posted

技术标签:

【中文标题】如何在 postgresql 中为日期添加加号和毫秒?【英文标题】:how to add a plus sign and milliseconds to a date in postgresql? 【发布时间】:2021-07-26 01:40:25 【问题描述】:

日期如2021-07-23

预期的输出是这样的2021-07-24 00:00:00+08 注意+08

我在下面试过这样,但我没有得到加号

s_table.school_date + INTERVAL '1 day'

知道如何让+08 出现吗?

【问题讨论】:

【参考方案1】:

这是包含时区的时间。

尝试在 Postgres 中运行以下命令,它会根据您所在的位置返回带有 +- 之后的时区的日期时间。

SELECT NOW();

Edit-01:

试试下面的代码:

s_table.school_date::timestamptz + INTERVAL '1 day'

【讨论】:

不,我已经提供了我拥有的示例数据。它唯一的年、月、日。我必须将它与小时、分钟、秒以及加号和秒一起输出。请重新阅读我帖子中的描述。谢谢。 我要加1天的间隔,请看上面的例子 没关系。 .我已经像这样解决了(s_table.school_date + INTERVAL '1 day')::timestamptz @sasori 也可以,或者我上面提供的代码。【参考方案2】:

我无法对其进行测试,但您是否尝试过将该日期转换为时间戳

请参阅this page from postgresql 教程,了解不同的时间戳类型。

所以你可以试试:

(s_table.school_date + INTERVAL '1 day')::timestampz

将您的当前值转换为带有时区的时间戳。

如果返回的时区不正确,您可以使用SET timezone='America/Los_Angeles' 或使用SHOW timezone; 查找当前数据库使用的时区您还可以使用SELECT * FROM pg_timezone_names; 查看数据库的所有时区。

我从this resource 获得时区特定信息。

我一定会先测试在事务中设置时区,因为我担心它会为您的整个数据库设置时区,这可能会影响数据库中发生的其他过程/查询。

我希望这会有所帮助!抱歉,我无法在发送此信息之前先尝试一下。

编辑:看起来我有点慢!很高兴你知道了:)

【讨论】:

以上是关于如何在 postgresql 中为日期添加加号和毫秒?的主要内容,如果未能解决你的问题,请参考以下文章

在 Postgresql 中为每个被拒绝或接受的日期查找第一个 OPENED_DATE

如何在swift 3中为日期添加天数

如何在 Xamarin 中为 DatePicker 添加最小日期验证检查

如何在 jQuery 日期选择器中为禁用日期添加工具提示?

单击按钮后,如何在 Bootstrap DateTimePicker 中为日期添加月份?

如何在 postgresql 日期时间中添加天数