知识库

如何将表示日期时间戳的属性转换为另一个时区

时间数据类型支持随 Neo4j 3.4 引入,因此可以将带时区的日期时间戳记录为属性值。

以下 Cypher 可用于将带时区的日期时间戳从一个时区转换为另一个时区

MATCH (n:Person)
       where    exists(n.date_enrolled)
       return   n.date_enrolled,
                datetime({datetime:datetime(n.date_enrolled), timezone:'America/New York'}) as EST limit 1;

例如,使用以下数据

CREATE (n:Person) set n.date_enrolled='2019-02-26T01:23:40Z'

在此示例中,属性 date_enrolled 以字符串形式记录,表示 UTC 时间 2019-02-26 01:23:40

上述 MATCH 语句将返回

n.date_enrolled       | EST
"2019-02-26T01:23:40Z"│"2019-02-25T20:23:40[America/New_York]"
© . All rights reserved.