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