Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Graph Data Processing with Cypher

You're reading from   Graph Data Processing with Cypher A practical guide to building graph traversal queries using the Cypher syntax on Neo4j

Arrow left icon
Product type Paperback
Published in Dec 2022
Publisher Packt
ISBN-13 9781804611074
Length 332 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Ravindranatha Anthapu Ravindranatha Anthapu
Author Profile Icon Ravindranatha Anthapu
Ravindranatha Anthapu
Arrow right icon
View More author details
Toc

Table of Contents (18) Chapters Close

Preface 1. Part 1: Cypher Introduction
2. Chapter 1: Introduction to Neo4j and Cypher FREE CHAPTER 3. Chapter 2: Components of Cypher 4. Part 2: Working with Cypher
5. Chapter 3: Loading Data with Cypher 6. Chapter 4: Querying Graph 7. Chapter 5: Filtering, Sorting, and Aggregations 8. Chapter 6: List Expressions, UNION, and Subqueries 9. Part 3: Advanced Cypher Concepts
10. Chapter 7: Working with Lists and Maps 11. Chapter 8: Advanced Query Patterns 12. Chapter 9: Query Tuning 13. Chapter 10: Using APOC Utilities 14. Chapter 11: Cypher Ecosystem 15. Chapter 12: Tips and Tricks 16. Index 17. Other Books You May Enjoy

Working with the FOREACH clause

The FOREACH clause can be used to process a list and update the data in a graph. It can only be used to update data using the CREATE, MERGE, SET, DELETE, REMOVE, and FOREACH clauses. It is not possible to use the MATCH clause within FOREACH. Also, the variables in the context of the FOREACH clause are limited to its scope only and there is no option to remove those variables to be used after FOREACH.

Let’s look at an example usage:

MATCH (p:Patient)
WHERE p.marital IS NULL
WITH collect(p) as nodes
FOREACH( n in nodes | SET n:UNKNOWN_STATUS)

In this query, we are finding all the patients whose marital status is null, collecting all those patients into a list, and then using the FOREACH clause to add an UNKNOWN_STATUS label.

We can see from the screenshot that we have updated 388 patient nodes with the new label.

Figure 8.15 – Using FOREACH to add a new label to the node

Another usage of the FOREACH clause...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image