Neo4j - Klausul Foreach

Itu FOREACH klausa digunakan untuk memperbarui data dalam daftar apakah komponen jalur, atau hasil agregasi.

Sintaksis

Berikut ini adalah sintaks dari klausa FOREACH.

MATCH p = (start node)-[*]->(end node) 
WHERE start.node = "node_name" AND end.node = "node_name" 
FOREACH (n IN nodes(p)| SET n.marked = TRUE)

Contoh

Sebelum melanjutkan dengan contoh, buat jalur p di database Neo4j seperti yang ditunjukkan di bawah ini.

CREATE p = (Dhawan {name:"Shikar Dhawan"})-[:TOPSCORRER_OF]->(Ind{name: 
   "India"})-[:WINNER_OF]->(CT2013{name: "Champions Trophy 2013"}) 
RETURN p

Berikut ini adalah contoh Permintaan Cypher yang menambahkan properti ke semua node di sepanjang jalur menggunakan klausa FOREACH.

MATCH p = (Dhawan)-[*]->(CT2013) 
   WHERE Dhawan.name = "Shikar Dhawan" AND CT2013.name = "Champions Trophy 2013" 
FOREACH (n IN nodes(p)| SET n.marked = TRUE)

Untuk menjalankan kueri di atas, lakukan langkah-langkah berikut -

Step 1- Buka Aplikasi desktop Neo4j dan mulai Server Neo4j. Buka aplikasi browser bawaan Neo4j menggunakan URLhttp://localhost:7474/ seperti yang ditunjukkan pada tangkapan layar berikut.

Step 2 - Salin dan tempel kueri yang diinginkan di prompt dolar dan tekan tombol putar (untuk menjalankan kueri) yang disorot di tangkapan layar berikut.

Hasil

Saat menjalankan, Anda akan mendapatkan hasil sebagai berikut.

Verifikasi

Untuk memverifikasi pembuatan node, ketik dan jalankan kueri berikut di prompt dollar.

MATCH (n) RETURN n

Kueri ini mengembalikan semua node dalam database (kita akan membahas kueri ini secara mendetail di bab-bab selanjutnya).

Saat menjalankan, kueri ini menunjukkan simpul yang dibuat seperti yang ditunjukkan pada tangkapan layar berikut.