3.3.19. SKIP

SKIP defines from which row to start including the rows in the output.

By using SKIP, the result set will get trimmed from the top. Please note that no guarantees are made on the order of the result unless the query specifies the ORDER BY clause. SKIP accepts any expression that evaluates to a positive integer — however the expression cannot refer to nodes or relationships.

Figure 3.14. Graph
alt

3.3.19.1. Skip first three

To return a subset of the result, starting from the fourth result, use the following syntax:

Query. 

MATCH (n)
RETURN n
ORDER BY n.name
SKIP 3

The first three nodes are skipped, and only the last two are returned in the result.

Result. 

+-------------------+
| n                 |
+-------------------+
| Node[3]{name:"D"} |
| Node[4]{name:"E"} |
+-------------------+
2 rows

3.3.19.2. Return middle two

To return a subset of the result, starting from somewhere in the middle, use this syntax:

Query. 

MATCH (n)
RETURN n
ORDER BY n.name
SKIP 1
LIMIT 2

Two nodes from the middle are returned.

Result. 

+-------------------+
| n                 |
+-------------------+
| Node[1]{name:"B"} |
| Node[2]{name:"C"} |
+-------------------+
2 rows

3.3.19.3. Skip first from expression

Skip accepts any expression that evaluates to a positive integer as long as it is not referring to any external variables:

Query. 

MATCH (n)
RETURN n
ORDER BY n.name
SKIP toInt(3*rand())+ 1

The first three nodes are skipped, and only the last two are returned in the result.

Result. 

+-------------------+
| n                 |
+-------------------+
| Node[1]{name:"B"} |
| Node[2]{name:"C"} |
| Node[3]{name:"D"} |
| Node[4]{name:"E"} |
+-------------------+
4 rows