mirror of https://gitee.com/bigwinds/arangodb
40 lines
1.7 KiB
Plaintext
40 lines
1.7 KiB
Plaintext
@Q:
|
|
FOR v,e,p IN <span class="hljs-number">1.</span><span class="hljs-number">.3</span> OUTBOUND <span class="hljs-string">'circles/A'</span> GRAPH <span class="hljs-string">'traversalGraph'</span>
|
|
FILTER p.edges[<span class="hljs-number">0</span>].label == <span class="hljs-string">'right_foo'</span>
|
|
RETURN v._key
|
|
|
|
@R
|
|
Query String (129 chars, cacheable: true):
|
|
FOR v,e,p IN 1..3 OUTBOUND 'circles/A' GRAPH 'traversalGraph'
|
|
FILTER p.edges[0].label == 'right_foo'
|
|
RETURN v._key
|
|
|
|
|
|
Execution plan:
|
|
Id NodeType Est. Comment
|
|
1 SingletonNode 1 * ROOT
|
|
2 TraversalNode 1 - FOR v /* vertex */ IN 1..3 /* min..maxPathDepth */ OUTBOUND 'circles/A' /* startnode */ GRAPH 'traversalGraph'
|
|
5 CalculationNode 1 - LET #7 = v.`_key` /* attribute expression */
|
|
6 ReturnNode 1 - RETURN #7
|
|
|
|
Indexes used:
|
|
By Name Type Collection Unique Sparse Selectivity Fields Ranges
|
|
2 edge edge edges false false 100.00 % [ `_from` ] base OUTBOUND
|
|
2 edge edge edges false false 100.00 % [ `_from` ] level 0 OUTBOUND
|
|
|
|
Traversals on graphs:
|
|
Id Depth Vertex collections Edge collections Options Filter / Prune Conditions
|
|
2 1..3 circles edges uniqueVertices: none, uniqueEdges: path FILTER (p.`edges`[0].`label` == "right_foo")
|
|
|
|
Optimization rules applied:
|
|
Id RuleName
|
|
1 move-calculations-up
|
|
2 move-filters-up
|
|
3 move-calculations-up-2
|
|
4 move-filters-up-2
|
|
5 optimize-traversals
|
|
6 remove-filter-covered-by-traversal
|
|
7 remove-unnecessary-calculations-2
|
|
8 remove-redundant-path-var
|
|
|