arangosh> var stmt = db._createStatement(
........> `FOR doc IN @@collection FILTER doc.user == @user RETURN doc`
........> );
arangosh> stmt.bind({ "@collection" : "_users", "user" : "root" });
arangosh> stmt.explain();
{
"plan" : {
"nodes" : [
{
"type" : "SingletonNode",
"dependencies" : [ ],
"id" : 1,
"estimatedCost" : 1,
"estimatedNrItems" : 1
},
{
"type" : "IndexNode",
"dependencies" : [
1
],
"id" : 6,
"estimatedCost" : 1.95,
"estimatedNrItems" : 1,
"database" : "_system",
"collection" : "_users",
"satellite" : false,
"outVariable" : {
"id" : 0,
"name" : "doc"
},
"indexes" : [
{
"id" : "9",
"type" : "hash",
"fields" : [
"user"
],
"selectivityEstimate" : 1,
"unique" : true,
"sparse" : true,
"deduplicate" : true
}
],
"condition" : {
"type" : "n-ary or",
"subNodes" : [
{
"type" : "n-ary and",
"subNodes" : [
{
"type" : "compare ==",
"subNodes" : [
{
"type" : "attribute access",
"name" : "user",
"subNodes" : [
{
"type" : "reference",
"name" : "doc",
"id" : 0
}
]
},
{
"type" : "value",
"value" : "root"
}
]
}
]
}
]
},
"reverse" : false
},
{
"type" : "ReturnNode",
"dependencies" : [
6
],
"id" : 5,
"estimatedCost" : 2.95,
"estimatedNrItems" : 1,
"inVariable" : {
"id" : 0,
"name" : "doc"
}
}
],
"rules" : [
"use-indexes",
"remove-filter-covered-by-index",
"remove-unnecessary-calculations-2"
],
"collections" : [
{
"name" : "_users",
"type" : "read"
}
],
"variables" : [
{
"id" : 2,
"name" : "1"
},
{
"id" : 0,
"name" : "doc"
}
],
"estimatedCost" : 2.95,
"estimatedNrItems" : 1,
"initialize" : true
},
"warnings" : [ ],
"stats" : {
"rulesExecuted" : 29,
"rulesSkipped" : 0,
"plansCreated" : 1
},
"cacheable" : true
}