apoc.date.currentTimestamp

此函数已弃用。请改用 Cypher 的 datetime.realtime() 函数。

详细信息

语法

apoc.date.currentTimestamp()

描述

返回当前的 Unix 纪元时间戳(以毫秒为单位)。

返回

INTEGER(整数)

使用 Cypher 获取当前时间

使用 Cypher 获取当前时间可以通过 时间函数 - 即时类型 (Temporal functions - instant types) 来完成。

这些函数可以获取实时时间(函数调用时的时间)、与语句关联的时间,或与当前事务关联的时间。

获取当前日期时间的 Cypher 语法
RETURN datetime.realtime()

使用示例

以下示例展示了如何同时使用 APOC 和 Cypher 返回以毫秒为单位的当前时间戳

apoc.date.currentTimestamp
WITH apoc.date.currentTimestamp() AS outputInMs
RETURN outputinMs, datetime({epochMillis: output}) AS datetime;
使用 Cypher 的 datetime.realtime()
WITH datetime.realtime() AS output
RETURN output.epochMillis AS outputinMs, output AS datetime;
结果
outputinMs datetime

1604571467744

2020-11-05T10:17:47.744Z

以下示例展示了同时使用 APOC 和 Cypher 在休眠 1000 毫秒前后返回的当前时间戳

apoc.date.currentTimestamp
WITH apoc.date.currentTimestamp() AS outputStart
CALL apoc.util.sleep(1000)
WITH outputStart, apoc.date.currentTimestamp() AS outputEnd
RETURN outputStart,
       datetime({epochMillis: outputStart}) AS datetimeStart,
       outputEnd,
       datetime({epochMillis: outputEnd}) AS datetimeEnd;
使用 Cypher 的 datetime.realtime()
WITH datetime.realtime() AS start
CALL apoc.util.sleep(1000)
WITH outputStart, datetime.realtime() AS end
RETURN start.epochMillis AS outputStart,
       start AS datetimeStart,
       end.epochMillis AS outputEnd,
       end AS datetimeEnd;
结果
outputStart datetimeStart outputEnd datetimeEnd

1604571641430

2020-11-05T10:20:41.430Z

1604571642434

2020-11-05T10:20:42.434Z