我如何在neo4j中更改时区?

时间:2018-04-17 10:16:48

标签: time neo4j timezone

我想将默认时区从UTC更改为另一个时区。怎么可能?我试过了 RETURN apoc.date.format(timestamp(),'ms','yyyy / MM / dd HH / mm / ss') 但它会在localhost上返回utc时间。

1 个答案:

答案 0 :(得分:-2)

答案示例:

RETURN apoc.date.format(timestamp(),'ms', 'yyyy/MM/dd HH:mm:ss',"Europe/Paris")

来自源的方法:

public String format(final 
                     @Name("time") Long time
                    ,@Name(value = "unit", defaultValue = "ms") String unit
                    ,@Name(value = "format",defaultValue = DEFAULT_FORMAT) String format
                    ,@Name(value = "timezone",defaultValue = "") String timezone) 
    {
        return time == null ? null : parse(unit(unit).toMillis(time), format, timezone);
    }

timezone参数进一步传递给Java TimeZone类构造函数。 从Java documentation到它应包含的内容 -

  

TimeZone的ID,可以是" PST"等缩写,也可以是完整的   名称如" America / Los_Angeles"或自定义ID,例如" GMT-8:00"。   请注意,缩写的支持是针对JDK 1.1.x兼容性的   只应使用全名。

该项目的源代码 - https://github.com/neo4j-contrib/neo4j-apoc-procedures/blob/3.3/src/main/java/apoc/date/Date.java

有关详细信息,请查看有关APOC日期的文章 http://xclave.azurewebsites.net/2018/02/28/better-know-apoc-apoc-3-date-parse-format/