如何在 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
如何在 Xamarin 中为 DatePicker 添加最小日期验证检查