Juliette Gia
Juliette Gia

Reputation: 148

MemgraphDB: Using openCypher to add names to Karate club friendship network

I'm using Karate club friendship network sample data set to learn Cypher. Here is the description of it:

The model consists of 34 users where some users are friends within a university karate club.

The description says, and my query confirms that users have no names, they have ID and name the same.

enter image description here

I'd like to change this. How can I update the names of all nodes?

Upvotes: 0

Views: 32

Answers (2)

cybersam
cybersam

Reputation: 67044

Here is one way:

UNWIND [['0','Adam'],['1','Bridget'],['2','Charlie'],...,['33','Zoe']] AS data
MATCH (u:User)
WHERE u.id = data[0]
SET u.name = data[1]

Upvotes: 2

Juliette Gia
Juliette Gia

Reputation: 148

This is simple task, but the query is a little bit longer. The image shows that there are 34 nodes. This block needs to be ajusted and repeated 34 times:

MATCH (n)
WHERE n.id = '0'
SET n.name = 'Zoe';

So the query for all 34 names could be:

MATCH (n)
WHERE n.id = '0'
SET n.name = 'Zoe';
MATCH (n)
WHERE n.id = '1'
SET n.name = 'Isla';
MATCH (n)
WHERE n.id = '2'
SET n.name = 'Ella';
MATCH (n)
WHERE n.id = '3'
SET n.name = 'Violet';
MATCH (n)
WHERE n.id = '4'
SET n.name = 'Grace';
MATCH (n)
WHERE n.id = '5'
SET n.name = 'Hannah';
MATCH (n)
WHERE n.id = '6'
SET n.name = 'Lily';
MATCH (n)
WHERE n.id = '7'
SET n.name = 'Madison';
MATCH (n)
WHERE n.id = '8'
SET n.name = 'Evelyn';
MATCH (n)
WHERE n.id = '9'
SET n.name = 'Penelope';
MATCH (n)
WHERE n.id = '10'
SET n.name = 'Leo';
MATCH (n)
WHERE n.id = '11'
SET n.name = 'Adam';
MATCH (n)
WHERE n.id = '12'
SET n.name = 'Dylan';
MATCH (n)
WHERE n.id = '13'
SET n.name = 'Max';
MATCH (n)
WHERE n.id = '14'
SET n.name = 'Aaron';
MATCH (n)
WHERE n.id = '15'
SET n.name = 'Eli';
MATCH (n)
WHERE n.id = '16'
SET n.name = 'Oscar';
MATCH (n)
WHERE n.id = '17'
SET n.name = 'Christopher';
MATCH (n)
WHERE n.id = '18'
SET n.name = 'Miles';
MATCH (n)
WHERE n.id = '19'
SET n.name = 'Nolan';
MATCH (n)
WHERE n.id = '20'
SET n.name = 'Andrew';
MATCH (n)
WHERE n.id = '21'
SET n.name = 'Joshua';
MATCH (n)
WHERE n.id = '22'
SET n.name = 'Isaac';
MATCH (n)
WHERE n.id = '23'
SET n.name = 'James';
MATCH (n)
WHERE n.id = '24'
SET n.name = 'Elijah';
MATCH (n)
WHERE n.id = '25'
SET n.name = 'Ian';
MATCH (n)
WHERE n.id = '26'
SET n.name = 'Gavin';
MATCH (n)
WHERE n.id = '27'
SET n.name = 'Adrian';
MATCH (n)
WHERE n.id = '28'
SET n.name = 'Robert';
MATCH (n)
WHERE n.id = '29'
SET n.name = 'Theo';
MATCH (n)
WHERE n.id = '30'
SET n.name = 'Eric';
MATCH (n)
WHERE n.id = '31'
SET n.name = 'Michael';
MATCH (n)
WHERE n.id = '32'
SET n.name = 'Logan';
MATCH (n)
WHERE n.id = '33'
SET n.name = 'Tyler';

Upvotes: 0

Related Questions