【问题标题】:ArangoDB AQL paths filtersArangoDB AQL 路径过滤器
【发布时间】:2017-11-02 18:41:14
【问题描述】:

我有点不明白 ArangoDB 如何解释我的查询以及为什么简单的过滤不能按预期工作。这是我的查询:

FOR v, e, p in 3 OUTBOUND "company/jquery" company_teams, team_contributors, committed
  OPTIONS {uniqueVertices: "global", bfs: true} 
  FILTER p.vertices[1]._key == "1055031914"
  FILTER length(p.vertices[2].parents) < 2
RETURN v._id

此查询返回空结果。但是,如果我只留下一个过滤器(无论是哪一个),我都会得到结果。由此我得出结论,这不是与数据相关的问题,这意味着我误解了查询的执行方式或其他原因。

想法,想法?

【问题讨论】:

  • 去掉一个过滤器并在最后一行添加RETURN p,你会得到什么结果?
  • 这是一个很有趣的问题,我看到的也很有趣。即使我不知道如何解释它。这个查询返回给我一个图表FOR v, e, p in 3 OUTBOUND "company/jquery" company_teams, team_contributors, committed OPTIONS {uniqueVertices: "global", bfs: true} //FILTER p.vertices[1]._key == "1055031914" FILTER length(p.vertices[2].parents) &lt; 2 RETURN p
  • 这个结果为空FOR v, e, p in 3 OUTBOUND "company/jquery" company_teams, team_contributors, committed OPTIONS {uniqueVertices: "global", bfs: true} FILTER p.vertices[1]._key == "1055031914" //FILTER length(p.vertices[2].parents) &lt; 2 RETURN p@CoDEman,你有什么想法吗?
  • arango 键是动态创建的,除非您自己指定一些独特的东西……也许您使用的键不存在。确保密钥存在于您使用过滤器的集合中。如果您也能提供您的查询所用的数据,那将是最好的。
  • @Prasanna,钥匙在。这是我创建的示例数据库转储以复制问题drive.google.com/open?id=1VIZFL3vcZTw5q2ur-FzZQNrAa1u1jYXx

标签: arangodb


【解决方案1】:

显然这是一个错误,Arango 团队已经确认了这一点。如果你想跟踪它,这里是Github ticket。

【讨论】:

  • 自 3.2.7 版起已修复
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多