Filter based on a particular label or value.


has( { 'vertexLabel' | 'edgeLabel' }, [ 'propertyKey_name', 'propertyKey_value' ] ... )
Table 1. Legend
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.


The has() step is a filter step. It is the most common step used for graph traversals, since this step narrows the query to find particular vertices or edges with certain property values.


Find the meal item that is called a taco:
g.V().has('meal_item', 'name', 'taco')