## 10.4. 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.

### 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
2 rows

`Node[0]{name:"D"}`

`Node[1]{name:"E"}`

Try this query live create (_0 {`name`:"D"}) create (_1 {`name`:"E"}) create (_2 {`name`:"A"}) create (_3 {`name`:"B"}) create (_4 {`name`:"C"}) create _2-[:`KNOWS`]->_1 create _2-[:`KNOWS`]->_0 create _2-[:`KNOWS`]->_4 create _2-[:`KNOWS`]->_3 match (n) return n order by n.name skip 3

### 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
2 rows

`Node[3]{name:"B"}`

`Node[4]{name:"C"}`

Try this query live create (_0 {`name`:"D"}) create (_1 {`name`:"E"}) create (_2 {`name`:"A"}) create (_3 {`name`:"B"}) create (_4 {`name`:"C"}) create _2-[:`KNOWS`]->_1 create _2-[:`KNOWS`]->_0 create _2-[:`KNOWS`]->_4 create _2-[:`KNOWS`]->_3 match (n) return n order by n.name skip 1 limit 2

### Skip first from expression

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

Query

```MATCH (n)
RETURN n
ORDER BY n.name
`Node[0]{name:"D"}`
`Node[1]{name:"E"}`