Prev |  | Next

## 15.22. Foreach

Collections and paths are key concepts in Cypher. To use them for updating data, you can use the `FOREACH` construct. It allows you to do updating commands on elements in a collection — a path, or a collection created by aggregation.

The identifier context inside of the foreach parenthesis is separate from the one outside it, i.e. if you `CREATE` a node identifier inside of a `FOREACH`, you will not be able to use it outside of the foreach statement, unless you match to find it.

Inside of the `FOREACH` parentheses, you can do any updating commands —`CREATE`, `CREATE UNIQUE`, `DELETE`, and `FOREACH`.

### 15.22.1. Mark all nodes along a path

This query will set the property `marked` to true on all nodes along a path.

Query

    START begin = node(2), end = node(1)
    MATCH p = begin -[*]-> end foreach(n in nodes(p) :
    SET n.marked = true)

Nothing is returned from this query.

Result

Properties set: 4
4 ms
`(empty result)`

Copyright © 2012 Neo Technology

Prev | Up | Next
| Home |