Aggregation
.aggregate([aggregations])
Groups and summarizes data from the graph. It allows you to perform calculations on vertex or edge properties. The following aggregation types are available:
Aggregation Types
.gripql.term(name, field, size)
Return top n terms and their counts for a field.
G.V().hasLabel("Person").aggregate(gripql.term("top-names", "name", 10))
Counts name occurences across
Person vertices and returns the 10 most
frequent name values.
.gripql.histogram(name, field, interval)
Return binned counts for a field.
G.V().hasLabel("Person").aggregate(gripql.histogram("age-hist", "age", 5))
Creates a histogram of age values with bins of
width 5 across Person vertices.
.gripql.percentile(name, field, percents=[])
Return percentiles for a field.
G.V().hasLabel("Person").aggregate(gripql.percentile("age-percentiles", "age", [25,50,75]))
Calculates the 25th, 50th, and 75th percentiles for
age values across Person vertices.
.gripql.field(“fields”, “$”)
Returns all of the fields found in the data structure. Use
$ to get a listing of all fields found at the
root level of the data property of vertices or
edges.
gripql.type(name, field)
Returns the data type of requested field. For the python
client, if field is not provided, it is copied
from name.
Current returned types include NUMERIC,
STRING and UNKNOWN. If a field is
always null, or has multiple types, it will be returned as
UNKNOWN.
.count()
Returns the total number of elements in the traversal.
Example:
G.query().V().hasLabel("Person").count()
This query returns the total number of vertices with the label “Person”.
.distinct([fields])
Filters the traversal to return only unique elements. If
fields are provided, uniqueness is determined
by the combination of values in those fields; otherwise, the
_id is used.
Example:
G.query().V().hasLabel("Person").distinct(["name", "age"])
This query returns only unique “Person” vertices, where uniqueness is determined by the combination of “name” and “age” values.
.sort([fields])
Sort the output using the field values