Neo4j 为什么bolt协议返回的日期时间不正确

Neo4j 为什么bolt协议返回的日期时间不正确,neo4j,cypher,Neo4j,Cypher,我用一系列历元日期时间查询neo4j MATCH (event:Event) WHERE 1420099200000 <= event.datetime <= 1494831600000 RETURN event.start_date,event.datetime_mu 另一方面,bolt将一个数组event.datetime\u mu返回到具有高属性和低属性的对象数组中 { "keys": [ "event.start_date",

我用一系列历元日期时间查询neo4j

MATCH (event:Event)
WHERE 1420099200000 <= event.datetime <= 1494831600000 
RETURN event.start_date,event.datetime_mu
另一方面,bolt将一个数组
event.datetime\u mu
返回到具有高属性和低属性的对象数组中

{
      "keys": [
        "event.start_date",
        "event.datetime_mu"
      ],
      "length": 2,
      "_fields": [
        "2017-02-18T00:00:00",
        {
          "low": 1317315584,
          "high": 346
        }
      ],
      "_fieldLookup": {
        "event.start_date": 0,
        "event.datetime_mu": 1
      }
    }
我不知道如何从bolt对象返回或计算正确的历元日期时间
low
通常具有最接近的绝对值,但有时会得到一个负整数。range()运算符也会发生同样的情况


不确定这是否是我缺少的东西,或者如何从对象计算正确的日期时间。有什么建议吗?

要传递64位数值,必须将其分解为低值和高值


Javascript不支持64位长度的整数类型,因此驱动程序提供了一些。

您使用哪种语言?有时,驱动程序的自述文件提供了一些处理由高字段和低字段表示的64位值的技巧。您可能还想看看您的语言对长值的支持,看看它是否有办法解释或解析Neo4j返回的内容。我发布的bolt响应来自neo4j本地浏览器中的code选项卡。通常我使用官方的javascript
neo4j驱动程序
。在查看文档后,我尝试以字符串的形式返回datetime,比如RETURN-toString(…),我使用字符串方法作为其灵活性,并将其转换回来。谢谢大家!
{
      "keys": [
        "event.start_date",
        "event.datetime_mu"
      ],
      "length": 2,
      "_fields": [
        "2017-02-18T00:00:00",
        {
          "low": 1317315584,
          "high": 346
        }
      ],
      "_fieldLookup": {
        "event.start_date": 0,
        "event.datetime_mu": 1
      }
    }