Training Cypher ASCII Art - tomgeudens/practical-neo4j GitHub Wiki

Context: Cut-and-paste commands for the Cypher ASCII Art training.

Prerequisite: This document will assume you have a Neo4j instance up-and-running and have loaded the basic movies dataset (using the Neo4j Browser guide).

You wanted this, I know

("`-''-/").___..--''"`-._
 `6_ 6  )   `-.  (     ).`-.__.`)
 (_Y_.)'  ._   )  `._ `. ``-..-'
   _..`--'_..-_/  /--'_.'
  ((((.-''  ((((.'  (((.-'

Nodes

001

MATCH (:Person {name: "Tom Hanks"})-[]->()
RETURN count(*);

002

CREATE ();

003

MATCH (n) WHERE labels(n) = [] 
RETURN n;

004

MATCH (n) WHERE labels(n) = [] 
DELETE n;

005

MATCH (p:Person {name: "Tom Hanks"})-[]->(x)
RETURN x.title;

006

CREATE (x)
DELETE x;

007

MATCH (:Person {name: "Tom Hanks"})-[]->(:Movie)
RETURN count(*);

008

CREATE (:AtLeastICanFindIt);

009

MATCH (n:AtLeastICanFindIt)
DELETE n;

010

MATCH (p:Person {name: "Tom Hanks"})-[]->(f:Movie)
RETURN p.name, f.title;

011

CREATE (f:AtLeastICanFindIt)
RETURN labels(f);

012

MATCH (f:AtLeastICanFindIt)
DELETE f;

013

CREATE (f:Movie:Person)
RETURN labels(f);

014

MATCH (f:Movie:Person) 
DELETE f;

Relationships

015

MATCH (:Person {name: "Tom Hanks"})-[]-()
RETURN count(*);

016

MATCH (:Person {name: "Tom Hanks"})--()
RETURN count(*);

017

MATCH (n) 
WHERE NOT EXISTS ( (n)-[]->() )
RETURN count(*);

018

CREATE ()-[:DOESMORETHANYOUTHINK]->();

019

MATCH pattern=()-[:DOESMORETHANYOUTHINK]->()
RETURN pattern;

020

MATCH pattern=()-[:DOESMORETHANYOUTHINK]->()
DELETE pattern;

021

MATCH (p:Person {name: "Tom Hanks"})-[f:ACTED_IN]->(m:Movie)
RETURN p.name, f.roles, m.title;

022

MATCH (p:Person {name: "Tom Hanks"})-[f:ACTED_IN|DIRECTED]->(m:Movie)
RETURN p.name, count(f);

Properties

023

CREATE (:Person {name: "John Doe"});

024

MATCH (p:Person {name: "John Doe"})
DELETE p;

025

MATCH (m:Movie {title: "The Matrix"})
CREATE pattern=(:Person {name: "John Doe"})-[:ACTED_IN {roles: ["Himself"]}]->(m)
RETURN pattern;