我time with time zone
在Postgres的平等问题上遇到了麻烦。 timestamp with time zone
平等的工作方式与我期望的一样,如果在对时区进行归一化之后,如果时间相同,那么它应该为真:
postgres=# select '2013-06-27 12:00:00 -0800'::timestamp with time zone = '2013-06-27 14:00:00 -0600'::timestamp with time zone;
?column?
----------
t
但是,似乎不适用于以下情况time with time zone
:
postgres=# select '12:00:00 -0800'::time with time zone = '14:00:00 -0600'::time with time zone;
?column?
----------
f
但是,不平等在我期望他们如何实现的过程中起作用:
postgres=# select '12:00:00 -0800'::time with time zone < '14:01:00 -0600'::time with time zone;
?column?
----------
t
postgres=# select '12:00:00 -0800'::time with time zone > '13:59:00 -0600'::time with time zone;
?column?
----------
t
我有什么误会time with time zone
吗?如何以与timestamp with time zone
平等相同的方式处理时区来评估平等?
以下是两种评估timetz
平等的方法:
SELECT a, b, a = b AS plain_equality
,'2000-1-1'::date + a = '2000-1-1'::date + b AS ts_equality
,a AT TIME ZONE 'UTC', b AT TIME ZONE 'UTC' AS timetz_equality
FROM (
SELECT '12:00:00 -0800'::timetz AS a, '14:00:00 -0600'::timetz AS b
) sub;
在 第一个 将它添加到一个date
。该 第二 通过使用AT TIME ZONE
构建体。
但不要使用time with time zone
。曾经。
Postgres仅支持该类型,因为它在SQL标准中。但是它是设计破坏的(不能考虑DST!),不建议使用。
在这里引用手册:
类型
time with time zone
是由SQL标准定义的,但是定义显示的属性会导致有用的疑问。在大多数情况下,组合date
,time
,timestamp without time zone
,和timestamp with time zone
应提供的任何应用程序所需要的日期/时间功能的完整范围。
我不太理解时间戳的用法, 例如 用户创建文章,他们可以选择,系统也会自动存储。 a.我是否应该使和具有时区并设置UTC的时间戳? b.用户post字符串,然后将其转换为utc时间戳,如下所示使用并存储,当某人选择这一行时,将其显示为用户客户端时间反向使用 c.我使用到,是不是意味着服务器时间?我做得对吗? 我的想法是,我总是在数据库中插入utc时区时间戳,无论用户/客户端读取的地方,都将数据转换为
我正在使用转换到新时区UTC+3,这等于EAT时区,但Postgres(9.1)显示错误的时间 (默认时区为斯德哥尔摩) 如果将JodaTime与两个时区一起使用,则显示相同的正确结果“2015-01-13 10:40:00”。
问题似乎在这个文件中:https://github.com/brianc/node-postgres/blob/master/lib/types/textparsers.js 如果从Postgres返回的日期字符串没有指定时区(例如或),那么它只会构造一个JavaScript日期对象,我相信它只会包括本地时区。
问题内容: 我有一个时间戳应该在EST中: 我了解第一部分:,但不了解。 这里是什么意思? 这是我获得该时间戳记的方式: 接着: 返回: 问题答案: 问题是: …不同于已记录的tzinfo实现的Python API;如果要创建本地时间,则需要使用本文档中介绍的方法… 再往下走,它说: 不幸的是,在许多时区中,使用标准datetime构造函数的tzinfo参数对pytz都不起作用。 因此,您需要按照
我有一个应用程序,它使用许多不同的时区...它在控制器中设置它们,并根据用户的不同而改变它们。所有时间都以UTC形式存储,没有时间戳等。 Tzinfo有时会起作用...Postgres将与“欧洲/华沙”合作,但Rails返回“欧洲-华沙” 总的来说,我在时区方面运气不佳,任何指针都将不胜感激。
问题内容: 我想知道WebDriver等待超时和隐式等待超时之间的技术差异。 问题答案: 如文档中所述: 在内部设置将用于所有连续搜索的超时。如果找不到该元素,它将尝试在指定的时间内反复查找该元素。它仅执行此操作,不能强制执行其他任何操作- 它等待元素显示。 ,或者只是您用于特定搜索的一次计时器。它具有更大的可扩展性,意味着您可以将其设置为等待可能需要的任何条件。通常,您可以使用一些预构建的元素来