是否可以在Neo4j中操纵日期?例如,如果今天的日期是1/1/2017,我可以从当前日期减去5天并获得2016年12月28日
答案 0 :(得分:3)
您可以使用APOC date/time support functions。
例如:
WITH apoc.date.parse('1/1/2017', 's', 'MM/dd/yyyy') AS startTime
RETURN apoc.date.format(startTime - 5*(60*60*24), 's', 'MM/dd/yyyy');
以上查询返回:
12/27/2016
[增订]
感谢来自@InverseFalcon的精彩评论,这里有一个更简洁,可能更可靠的方法。它使用分辨率天(而不是秒,如上所述)解析和格式化日期,因此无需将秒数转换为天数(由于诸如闰年和日期之类的事情,这通常也容易出错)节约时间调整)。
WITH apoc.date.parse('1/1/2017', 'd', 'MM/dd/yyyy') AS startDate
RETURN apoc.date.format(startDate - 5, 'd', 'MM/dd/yyyy');