1
0
Fork 0
arangodb/Documentation/Examples/GRAPHTRAV_07_traverse_7.gen...

43 lines
1.9 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>
LET localScopeVar = RAND() &gt; <span class="hljs-number">0.5</span>
FILTER p.edges[<span class="hljs-number">0</span>].theTruth != localScopeVar
RETURN v._key
@R
Query String (173 chars, cacheable: false):
FOR v,e,p IN 1..3 OUTBOUND 'circles/A' GRAPH 'traversalGraph'
LET localScopeVar = RAND() &gt; 0.5
FILTER p.edges[0].theTruth != localScopeVar
RETURN v._key
Execution plan:
Id NodeType Est. Comment
1 SingletonNode 1 * ROOT
2 TraversalNode 1 - FOR v /* vertex */, p /* paths */ IN 1..3 /* min..maxPathDepth */ OUTBOUND 'circles/A' /* startnode */ GRAPH 'traversalGraph'
3 CalculationNode 1 - LET localScopeVar = (RAND() &gt; 0.5) /* simple expression */
4 CalculationNode 1 - LET #6 = (p.`edges`[0].`theTruth` != localScopeVar) /* simple expression */
5 FilterNode 1 - FILTER #6
6 CalculationNode 1 - LET #8 = v.`_key` /* attribute expression */
7 ReturnNode 1 - RETURN #8
Indexes used:
By Name Type Collection Unique Sparse Selectivity Fields Ranges
2 edge edge edges false false 100.00 % [ `_from` ] base OUTBOUND
Functions used:
Name Deterministic Cacheable Uses V8
RAND false false false
Traversals on graphs:
Id Depth Vertex collections Edge collections Options Filter / Prune Conditions
2 1..3 circles edges uniqueVertices: none, uniqueEdges: path
Optimization rules applied:
Id RuleName
1 move-calculations-up
2 optimize-traversals
3 move-calculations-down