coalesce
Return a value based on the first traversal that has an element.
Synopsis
coalesce(traversal,traversal_1, ...)
Syntax conventions | Description |
---|---|
Lowercase and uppercase | Literal keyword. Includes () . |
Italics |
Variable value. Replace with a user-defined value. |
[] |
Optional. Square brackets ( [] ) surround
optional command arguments. Do not type the square brackets. |
{} |
Group. Braces ( {} ) identify a group to choose
from. Do not type the braces. |
| |
Or. A vertical bar ( | ) separates alternative
elements. Type any one of the elements. Do not type the vertical
bar. |
... |
Repeatable. An ellipsis ( ... ) indicates that
you can repeat the syntax element as often as required. |
Description
The coalesce()
step evaluates the provided traversals in order and returns
the first traversal that emits at least one element.
Examples
Create a list of each person and their mean average of stars given for recipe reviews,
using
coalesce()
to either print the mean or print a constant zero value if
no reviews are
found:"g.V().hasLabel('person').as('person','starCount').
select('person','starCount').
by('name').
by(coalesce(outE('reviewed').values('stars'),constant(0)).mean()).
order().by(select('starCount'), decr)"