我正在Neo4J中使用Cypher运行查询,在该查询中,我必须将节点的createdAt
属性与给定时间单位(以纪元为单位)进行比较。此createdAt
属性是string
格式的DateTime
,定义为-
DateTime
日期以毫秒为单位,以以下格式编码为字符串:yyyy-mm-ddTHH:MM:ss.sss + 0000,其中yyyy为 代表年份的四位数整数,年份,mm是 代表月份的两位整数,而dd是两位整数 代表日期,HH是代表小时的两位整数, MM是两位数字整数,代表分钟,而ss.sss是5 数字定点实数,表示直至秒 毫秒精度。最后,末尾的+0000代表 时区,在这种情况下始终为格林尼治标准时间。
以下是此属性的几个值-2011-03-21T19:32:38.295+0000
,2012-03-09T17:59:05.367+0000
。
我在Neo4j上遇到了Temporal Values documentation,但是找不到执行转换的方法。
当我执行一些给定的示例时,像这样-
RETURN datetime('2015-06-24T12:50:35.556+0100') AS theDateTime
我得到了错误-
Neo.ClientError.Statement.SyntaxError: Unknown function 'datetime' (line 1, column 16 (offset: 15))
不胜感激!
答案 0 :(得分:2)
在neo4j 3.4.0版中添加了时态函数,并且我已经验证您的查询在该版本中可以使用。
确保您使用的是Neo4j的最新版本。