代码之家  ›  专栏  ›  技术社区  ›  Ganesh Chippada

匹配neo4j中可能最近的节点

  •  0
  • Ganesh Chippada  · 技术社区  · 7 年前

    我有一个时间树,每间隔5分钟。我在尝试匹配准确的分钟数时没有问题。但在少数情况下,我可能会搜索与节点不完全匹配的分钟数。例如,如果我想匹配10:05,我可以。但是如果输入是10.03,我就没有结果。我将历元时间添加到分钟节点。我想返回给定输入可用的最近的分钟节点(如果是10.03,则返回10.05)。我如何做到这一点?

    MATCH (startMinute:Minute {epoch:apoc.date.parse('2018-04-12T16:33', 'ms',"yyyy-MM-dd'T'HH:mm")}) return startMinute
    

    我的型号是 here

    1 回复  |  直到 7 年前
        1
  •  0
  •   cybersam    7 年前

    如果您希望总是将时间凑到一起:

    MATCH (startMinute:Minute {epoch:
      (apoc.date.parse('2018-04-12T16:32', 'ms',"yyyy-MM-dd'T'HH:mm") + 29999)/300000*300000})
    RETURN startMinute;
    

    或者,如果要四舍五入到最近的位置:

    MATCH (startMinute:Minute {epoch:
      (apoc.date.parse('2018-04-12T16:32', 'ms',"yyyy-MM-dd'T'HH:mm") + 150000)/300000*300000})
    RETURN startMinute;