Neo4j-飞行分析仪-2个问题

Neo4j-飞行分析仪-2个问题,neo4j,cypher,Neo4j,Cypher,我在neo4j中使用飞行分析器数据库() 节点: 机场(SEA:机场{名称:'SEA'}) 航班(f0:Flight{日期:11/30/2015 04:24:12',持续时间:218,距离:1721,航空公司:19977}) 门票(t1f0:Ticket{等级:经济舱,价格:1344.75}) 关系: 目的地(f0)-[:目的地]->(ORD) 原点(f0)-[:原点]->(SEA) 分配(t1f0)-[:分配]->(f0) 我需要: 根据提供连接的城市数量订购航空公司(参与关系的唯一城

我在neo4j中使用飞行分析器数据库()

节点:

  • 机场(SEA:机场{名称:'SEA'})
  • 航班(f0:Flight{日期:11/30/2015 04:24:12',持续时间:218,距离:1721,航空公司:19977})
  • 门票(t1f0:Ticket{等级:经济舱,价格:1344.75})
关系:

  • 目的地(f0)-[:目的地]->(ORD)
  • 原点(f0)-[:原点]->(SEA)
  • 分配(t1f0)-[:分配]->(f0)
我需要:

  • 根据提供连接的城市数量订购航空公司(参与关系的唯一城市:始发地和目的地:给定航空公司服务的航班节点)

  • 寻找从洛杉矶(LAX)到代顿(DAY)最便宜的商务舱连接。 我设法找到了最便宜的连接,添加商务舱是一个问题:

  • MATCH p1=(起点:机场{name:“LAX”})(终点:机场{name:“DAY”})
    返回p1,
    减少(s=0,n IN[x IN节点(p1),其中标签中的“Flight”(飞行)]|
    s+[(n)
    
        MATCH p1 = (origin:Airport { name:"LAX" })<-[r:ORIGIN|DESTINATION*..6]->(destination:Airport  { name:"DAY" })
        RETURN p1,
        REDUCE(s = 0, n IN [x IN NODES(p1) WHERE 'Flight' IN LABELS(x)] |
          s + [(n)<-[:ASSIGN]-(ticket) | ticket.price][0]
          ) as total
        ORDER BY total
        LIMIT 1