The operations are listed and explained in official documents, so we examined its documents and their explanations to the Description column.
| Operation | Category | Reference | Description |
|---|---|---|---|
| AllNodesScan | Producer | Link | Reads all nodes from the node store. |
| Anti | Folder | Link | Tests for the absence of a pattern. |
| AntiSemiApply | Join | Link | Performs a nested loop. Tests for the absence of a pattern predicate. |
| Apply | Join | Link | Performs a nested loop. Yields rows from both the left-hand and right-hand side operators. |
| Argument | Executor | Link | Indicates the variable to be used as an argument to the right-hand side of an Apply operator. |
| AssertingMultiNodeIndexSeek | Combinator | Link | Used to ensure that no property uniqueness constraints are violated. |
| AssertSameNode | Combinator | Link | Used to ensure that no property uniqueness constraints are violated. |
| CacheProperties | Executor | Link | Reads node or relationship properties and caches them. |
| CartesianProduct | Join | Link | Produces a cartesian product of the inputs from the left-hand and right-hand operators. |
| Create | Consumer | Link | Creates nodes and relationships. |
| CreateConstraint | Consumer | Link | Creates a constraint for either nodes or relationships. |
| CreateIndex | Consumer | Link | Creates an index for either nodes or relationships. |
| Delete | Consumer | Link | Deletes a node or relationship. |
| DetachDelete | Consumer | Link | Deletes a node and its relationships. |
| DirectedAllRelationshipsScan | Join | Link | Fetches all relationships and their start and end nodes in the database. |
| DirectedRelationshipByIdSeek | Join | Link | Reads one or more relationships by id from the relationship store. |
| DirectedRelationshipIndexContainsScan | Join | Link | Examines all values stored in an index, searching for entries containing a specific string; for example, in queries including CONTAINS. |
| DirectedRelationshipIndexEndsWithScan | Join | Link | Examines all values stored in an index, searching for entries ending in a specific string; for example, in queries containing ENDS WITH. |
| DirectedRelationshipIndexScan | Join | Link | Examines all values stored in an index, returning all relationships and their start and end nodes with a particular relationship type and a specified property. |
| DirectedRelationshipIndexSeek | Join | Link | Finds relationships and their start and end nodes using an index seek. |
| DirectedRelationshipIndexSeekByRange | Join | Link | Finds relationships and their start and end nodes using an index seek where the value of the property matches a given prefix string. |
| DirectedRelationshipTypeScan | Join | Link | Fetches all relationships and their start and end nodes with a specific type from the relationship type index. |
| DirectedUnionRelationshipTypesScan | Join | Link | Fetches all relationships and their start and end nodes with at least one of the provided types from the relationship type index. |
| Distinct | Combinator | Link | Drops duplicate rows from the incoming stream of rows. |
| DoNothingIfExists(CONSTRAINT) | Folder | Link | Checks if a constraint already exists, if it does then it stops the execution, if not it continues. |
| DoNothingIfExists(INDEX) | Folder | Link | Checks if an index already exists, if it does then it stops the execution, if not it continues. |
| DropConstraint | Consumer | Link | Drops a constraint using its name. |
| DropIndex | Consumer | Link | Drops an index using its name. |
| Eager | Executor | Link | For isolation purposes, Eager ensures that operations affecting subsequent operations are executed fully for the whole dataset before continuing execution. |
| EagerAggregation | Executor | Link | Evaluates a grouping expression. |
| EmptyResult | Executor | Link | Eagerly loads all incoming data and discards it. |
| EmptyRow | Producer | Link | Returns a single row with no columns. |
| ExhaustiveLimit | Combinator | Link | The ExhaustiveLimit operator is similar to the Limit operator but always exhausts the input. Used when combining LIMIT and updates. |
| Expand(All) | Join | Link | Traverses incoming or outgoing relationships from a given node. |
| Expand(Into) | Join | Link | Finds all relationships between two nodes. |
| Filter | Link | It is mapped into the property filter. | |
| Foreach | Join | Link | Performs a nested loop. Yields rows from the left-hand operator and discards rows from the right-hand operator. |
| IntersectionNodeByLabelsScan | Producer | Link | Fetches all nodes that have all of the provided labels from the node label index. |
| LetAntiSemiApply | Join | Link | Performs a nested loop. Tests for the absence of a pattern predicate in queries containing multiple pattern predicates. |
| LetSelectOrAntiSemiApply | Join | Link | Performs a nested loop. Tests for the absence of a pattern predicate that is combined with other predicates. |
| LetSelectOrSemiApply | Join | Link | Performs a nested loop. Tests for the presence of a pattern predicate that is combined with other predicates. |
| LetSemiApply | Join | Link | Performs a nested loop. Tests for the presence of a pattern predicate in queries containing multiple pattern predicates. |
| Limit | Combinator | Link | Returns the first n rows from the incoming input. |
| LoadCSV | Producer | Link | Loads data from a CSV source into the query. |
| LockingMerge | Join | Link | Similar to the Merge operator but will lock the start and end node when creating a relationship if necessary. |
| Merge | Consumer | Link | The Merge operator will either read or create nodes and/or relationships. |
| MultiNodeIndexSeek | Producer | Link | Finds nodes using multiple index seeks. |
| NodeByIdSeek | Producer | Link | Reads one or more nodes by ID from the node store. |
| NodeByLabelScan | Producer | Link | Fetches all nodes with a specific label from the node label index. |
| NodeCountFromCountStore | Producer | Link | Uses the count store to answer questions about node counts. |
| NodeHashJoin | Join | Link | Executes a hash join on node ID. |
| NodeIndexContainsScan | Producer | Link | Examines all values stored in an index, searching for entries containing a specific string. |
| NodeIndexEndsWithScan | Producer | Link | Examines all values stored in an index, searching for entries ending in a specific string. |
| NodeIndexScan | Producer | Link | Examines all values stored in an index, returning all nodes with a particular label with a specified property. |
| NodeIndexSeek | Producer | Link | Finds nodes using an index seek. |
| NodeIndexSeekByRange | Producer | Link | Finds nodes using an index seek where the value of the property matches the given prefix string. |
| NodeLeftOuterHashJoin | Join | Link | Executes a left outer hash join. |
| NodeRightOuterHashJoin | Join | Link | Executes a right outer hash join. |
| NodeUniqueIndexSeek | Producer | Link | Finds nodes using an index seek within a unique index. |
| NodeUniqueIndexSeekByRange | Producer | Link | Finds nodes using an index seek within a unique index where the value of the property matches the given prefix string. |
| Optional | Producer | Link | Yields a single row with all columns set to null if no data is returned by its source. |
| OptionalExpand(All) | Join | Link | Traverses relationships from a given node, producing a single row with the relationship and end node set to null if the predicates are not fulfilled. |
| OptionalExpand(Into) | Join | Link | Traverses all relationships between two nodes, producing a single row with the relationship and end node set to null if no matching relationships are found (the start node is the node with the smallest degree). |
| OrderedAggregation | Folder | Link | Like EagerAggregation but relies on the ordering of incoming rows. Is not eager. |
| OrderedDistinct | Combinator | Link | Like Distinct but relies on the ordering of incoming rows. |
| PartialSort | Combinator | Link | Sorts a row by multiple columns if there is already an ordering. |
| PartialTop | Combinator | Link | Returns the first n rows sorted by multiple columns if there is already an ordering. |
| ProcedureCall | Projector | Link | Calls a procedure. |
| ProduceResults | Executor | Link | Prepares the result so that it is consumable by the user. |
| ProjectEndpoints | Projector | Link | Projects the start and end nodes of a relationship. |
| Projection | Projector | Link | Evaluates a set of expressions, producing a row with the results thereof. |
| RelationshipCountFromCountStore | Producer | Link | Uses the count store to answer questions about relationship counts. |
| RemoveLabels | Consumer | Link | Deletes labels from a node. |
| RollUpApply | Join | Link | Performs a nested loop. Executes a pattern expression or pattern comprehension. |
| SelectOrAntiSemiApply | Join | Link | Performs a nested loop. Tests for the absence of a pattern predicate if an expression predicate evaluates to false. |
| SelectOrSemiApply | Join | Link | Performs a nested loop. Tests for the presence of a pattern predicate if an expression predicate evaluates to false. |
| SemiApply | Join | Link | Performs a nested loop. Tests for the presence of a pattern predicate. |
| SetLabels | Consumer | Link | Sets labels on a node. |
| SetNodePropertiesFromMap | Consumer | Link | Sets properties from a map on a node. |
| SetProperty | Consumer | Link | Sets a property on a node or relationship. |
| SetRelationshipPropertiesFromMap | Consumer | Link | Sets properties from a map on a relationship. |
| ShortestPath | Folder | Link | Finds one or all shortest paths between two previously matched node variables. |
| ShowConstraints | Executor | Link | Lists the available constraints. |
| ShowFunctions | Executor | Link | Lists the available functions. |
| ShowIndexes | Executor | Link | Lists the available indexes. |
| ShowProcedures | Executor | Link | Lists the available procedures. |
| ShowSettings | Executor | Link | Lists the available configuration settings. |
| ShowTransactions | Executor | Link | Lists the available transactions on the current server. |
| Skip | Executor | Link | Skips n rows from the incoming rows. |
| Sort | Combinator | Link | Sorts rows by a provided key. |
| TerminateTransactions | Executor | Link | Terminate transactions with the given IDs. |
| Top | Combinator | Link | Returns the first ‘n’ rows sorted by a provided key. |
| TriadicBuild | Executor | Link | The TriadicBuild operator is used in conjunction with TriadicFilter to solve triangular queries. |
| TriadicFilter | Executor | Link | The TriadicFilter operator is used in conjunction with TriadicBuild to solve triangular queries. |
| TriadicSelection | Executor | Link | Solves triangular queries, such as the very common ‘find my friend-of-friends that are not already my friend’. |
| UndirectedAllRelationshipsScan | Join | Link | Fetches all relationships and their start and end nodes in the database. |
| UndirectedRelationshipByIdSeek | Join | Link | Reads one or more relationships by ID from the relationship store. |
| UndirectedRelationshipIndexContainsScan | Join | Link | Examines all values stored in an index, searching for entries containing a specific string; for example, in queries including CONTAINS. |
| UndirectedRelationshipIndexEndsWithScan | Join | Link | Examines all values stored in an index, searching for entries ending in a specific string; for example, in queries containing ENDS WITH. |
| UndirectedRelationshipIndexScan | Join | Link | Examines all values stored in an index, returning all relationships and their start and end nodes with a particular relationship type and a specified property. |
| UndirectedRelationshipIndexSeek | Join | Link | Finds relationships and their start and end nodes using an index seek. |
| UndirectedRelationshipIndexSeekByRange | Join | Link | Finds relationships and their start and end nodes using an index seek where the value of the property matches a given prefix string. |
| UndirectedRelationshipTypeScan | Join | Link | Fetches all relationships and their start and end nodes with a specific type from the relationship type index. |
| UndirectedUnionRelationshipTypesScan | Join | Link | Fetches all relationships and their start and end nodes with at least one of the provided types from the relationship type index. |
| Union | Combinator | Link | Concatenates the results from the right-hand operator with the results from the left-hand operator. |
| UnionNodeByLabelsScan | Producer | Link | Fetches all nodes that have at least one of the provided labels from the node label index. |
| Unwind | Folder | Link | Returns one row per item in a list. |
| ValueHashJoin | Join | Link | Executes a hash join on arbitrary values. |
| VarLengthExpand(All) | Join | Link | Traverses variable-length relationships from a given node. |
| VarLengthExpand(Into) | Join | Link | Finds all variable-length relationships between two nodes. |
| VarLengthExpand(Pruning) | Join | Link | Traverses variable-length relationships from a given node and only returns unique end nodes. |
| VarLengthExpand(Pruning,BFS) | Join | Link | Traverses variable-length relationships from a given node and only returns unique end nodes. |