neo4j中基于约束的查询

问题描述 投票:-2回答:1

我有一个由5个节点(火车站)组成的图形网络,如下图所示。每个站点都有一个代码,名称,分区和州,然后与旅程日期,距离_KM,时间_以小时为单位的详细信息之间存在关系。

目前,我可以建立的关系处于旅行级别(csv / excel中的行级别)详细信息。密码是:

Step 1)
LOAD CSV WITH HEADERS FROM "file:///five_stations.csv" AS row WITH row MERGE (:Station {name:row.Origin, code:row.Origin_Code, division:row.Origin_Division, state:row.Origin_State, zone:row.Origin_Zone}) MERGE (:Station {name:row.Destination, code:row.Destination_Code, division:row.Destination_Division, state:row.Destination_State, zone:row.Destination_Zone});

Step 2)
LOAD CSV WITH HEADERS FROM "file:///five_stations.csv" AS row WITH row MATCH (origin:Station {code:row.Origin_Code}), (destination:Station {code:row.Destination_Code}) CREATE (origin)-[:Time_Taken {timeTaken:row.Time, jrnyDate:row.Journey_Date, distance:row.Distance_KM}]->(destination);

Image

我想找到:

  • 从主站到主站的2跳的所有组合
  • 仅显示属于特定时间限制的2个跃点的组合(例如:显示行程少于n小时的所有往返行程[加上每个跃点所花费的时间]]
  • 仅显示落在一定公里范围内的2个跃点的组合(例如:显示行程少于x公里[所有跃点距离的相加]的所有往返行程)
  • [从任何特定火车的火车总站出发的旅程的开始日期应该是之前任何旅程的结束日期[旅程日期为9/27/2019格式]
  • 上面的2个跃点在同一5个站上,但是当我们扩展到更多时,它可以是n个跃点。

注意:我是Cypher和Neo4j的新手,在同一问题上提出了一个问题,如果您也正在学习,可以进行质量检查here

neo4j graphql cypher
1个回答
0
投票

[起初,我建议您阅读昨天刚刚发表的this blog post。 Vlad正在解决您要执行的相同类型的查询,但将火车换成航班。

© www.soinside.com 2019 - 2024. All rights reserved.