微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决Neo4j - 飞行分析器 - 2 个问题

我正在使用飞行分析器数据库 (https://neo4j.com/graphgist/flight-analyzer) 在 neo4j 中工作。

节点:

  • 机场 (SEA:Airport { name:'SEA' })
  • 航班(f0:Flight { 日期:'11/30/2015 04:24:12',持续时间:218,距离:1721,航空公司:'19977'})
  • 门票 (t1f0:Ticket { class:'economy',price:1344.75 })

关系:

  • 目的地 (f0)-[:DESTINATION]->(ORD)
  • Origin (f0)-[:ORIGIN]->(SEA)
  • 分配 (t1f0)-[:ASSIGN]->(f0)

我需要:

  1. 根据航空公司提供连接的城市数量对航空公司进行排序(参与关系的唯一城市:ORIGIN 和:指定航空公司服务的航班节点的 DESTINATION)

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

    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

感谢您的帮助! :)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。