将毫秒转换为日期以与今天的日期进行比较

Convert milisecond to date to compare to today's date

我有一组数据以毫秒为单位存储在neo4j中。

我正在尝试获取数据,然后将其更改为日期格式,并将其与 where 子句中的今天日期进行比较,以仅获取今天的媒体帖子。

我试过这些

MATCH (media:Media) 
RETURN date(datetime({millisecond:media.dateCreated}))

它returns

Neo.ClientError.Statement.ArgumentError: year must be specified

接下来,我试过了

MATCH (media:Media) 
RETURN apoc.date.field(media.dateCreated)

它 returns

Neo.ClientError.Statement.SyntaxError: Unknown function 'apoc.date.field' (line 2, column 28 (offset: 45)) "MATCH (media:Media) RETURN apoc.date.field(media.dateCreated)" ^

我尝试了多种方法,或多或少return同样的错误

我希望数据以日期格式而不是毫秒显示。

您可以使用 epochMillismilliseconds 创建 date

MATCH (media:Media) 
RETURN date(datetime({epochMillis:media.dateCreated}))

这个returns日期的格式如下图所示:

这个查询:

RETURN datetime({epochMillis: 1475292465000});

returns datetime对应纪元时间戳 1475292465000:

╒════════════════════════════════════════╕
│"datetime({epochMillis: 1475292465000})"│
╞════════════════════════════════════════╡
│"2016-10-01T03:27:45Z"                  │
└────────────────────────────────────────┘

如果你真的想要 date,你可以使用这个查询:

RETURN date(datetime({epochMillis: 1475292465000}));