From 3988b12c1a63ae78f8ef4ff06792f184384128e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20Pryce-=C3=85klundh?= <112686610+JPryce-Aklundh@users.noreply.github.com> Date: Wed, 20 Nov 2024 14:38:23 +0100 Subject: [PATCH 1/3] add tags for cheat sheet --- modules/ROOT/pages/clauses/create.adoc | 2 ++ modules/ROOT/pages/clauses/load-csv.adoc | 4 +++- modules/ROOT/pages/clauses/match.adoc | 8 +++++++- modules/ROOT/pages/clauses/merge.adoc | 2 ++ 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/modules/ROOT/pages/clauses/create.adoc b/modules/ROOT/pages/clauses/create.adoc index f2ee2cd58..da36117fd 100644 --- a/modules/ROOT/pages/clauses/create.adoc +++ b/modules/ROOT/pages/clauses/create.adoc @@ -235,6 +235,7 @@ This is because a relationship can only have exactly one type. ---- .Create nodes and relationships using dynamic node labels and relationship types +// tag::dynamic_create[] [source, cypher] ---- CREATE (greta:$($nodeLabels) {name: 'Greta Gerwig'}) @@ -243,6 +244,7 @@ UNWIND $movies AS movieTitle CREATE (greta)-[rel:$($relType)]->(m:Movie {title: movieTitle}) RETURN greta.name AS name, labels(greta) AS labels, type(rel) AS relType, collect(m.title) AS movies ---- +// end::dynamic_create[] .Result [role="queryresult",options="footer",cols="4*() RETURN relationshipType, count(r) AS relationshipCount ---- +// end:dynamic_match_variable[] + .Result [role="queryresult",options="header,footer",cols="2*(m:Movie {title: movieTitle}) RETURN greta.name AS name, labels(greta) AS labels, type(rel) AS relType, collect(m.title) AS movies ---- +// end::dynamic_merge[] .Result [role="queryresult",options="footer",cols="3* Date: Wed, 20 Nov 2024 14:40:27 +0100 Subject: [PATCH 2/3] grammar fix --- modules/ROOT/pages/clauses/match.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/ROOT/pages/clauses/match.adoc b/modules/ROOT/pages/clauses/match.adoc index 5b982ec9a..a19a78719 100644 --- a/modules/ROOT/pages/clauses/match.adoc +++ b/modules/ROOT/pages/clauses/match.adoc @@ -546,7 +546,7 @@ RETURN directors 1+d|Rows: 2 |=== -.Match nodes dynamically using the `any()` +.Match nodes dynamically using `any()` [source, cypher] ---- MATCH (n:$any(["Movie", "Actor"])) From 7fe2a746f1d528859187d1e39c4116d3b338b55f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jens=20Pryce-=C3=85klundh?= <112686610+JPryce-Aklundh@users.noreply.github.com> Date: Mon, 25 Nov 2024 13:50:41 +0100 Subject: [PATCH 3/3] fix failing query and update tags --- modules/ROOT/pages/clauses/create.adoc | 4 ++-- modules/ROOT/pages/clauses/load-csv.adoc | 6 +++--- modules/ROOT/pages/clauses/match.adoc | 8 ++++---- modules/ROOT/pages/clauses/merge.adoc | 4 ++-- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/modules/ROOT/pages/clauses/create.adoc b/modules/ROOT/pages/clauses/create.adoc index da36117fd..5b81fd75b 100644 --- a/modules/ROOT/pages/clauses/create.adoc +++ b/modules/ROOT/pages/clauses/create.adoc @@ -235,7 +235,7 @@ This is because a relationship can only have exactly one type. ---- .Create nodes and relationships using dynamic node labels and relationship types -// tag::dynamic_create[] +// tag::clauses_create_dynamic_create[] [source, cypher] ---- CREATE (greta:$($nodeLabels) {name: 'Greta Gerwig'}) @@ -244,7 +244,7 @@ UNWIND $movies AS movieTitle CREATE (greta)-[rel:$($relType)]->(m:Movie {title: movieTitle}) RETURN greta.name AS name, labels(greta) AS labels, type(rel) AS relType, collect(m.title) AS movies ---- -// end::dynamic_create[] +// end::clauses_create_dynamic_create[] .Result [role="queryresult",options="footer",cols="4* Protecting against Cypher injection]). .bands-with-headers.csv -[source, csv, filename="artists-with-headers.csv"] +[source, csv, filename="bands-with-headers.csv"] ---- Id,Label,Name 1,Band,The Beatles @@ -319,14 +319,14 @@ Id,Label,Name ---- .Query -// tag::dynamic_columns[] +// tag::clauses_load_csv_dynamic_columns[] [source, cypher] ---- LOAD CSV WITH HEADERS FROM 'file:///bands-with-headers.csv' AS line MERGE (n:$(line.Label) {name: line.Name}) RETURN n AS bandNodes ---- -// end::dynamic_columns[] +// end::clauses_load_csv_dynamic_columns[] .Result [role="queryresult",options="header,footer",cols="1*() RETURN relationshipType, count(r) AS relationshipCount ---- -// end:dynamic_match_variable[] +// end::clauses_match_dynamic_match_variable[] .Result diff --git a/modules/ROOT/pages/clauses/merge.adoc b/modules/ROOT/pages/clauses/merge.adoc index fb06577ad..2f56bc1d6 100644 --- a/modules/ROOT/pages/clauses/merge.adoc +++ b/modules/ROOT/pages/clauses/merge.adoc @@ -718,7 +718,7 @@ This is because the xref:planning-and-tuning/execution-plans.adoc[Cypher planner ---- .Merge nodes and relationships using dynamic node labels and relationship types -// tag::dynamic_merge[] +// tag::clauses_merge_dynamic_merge[] [source, cypher] ---- MERGE (greta:$($nodeLabels) {name: 'Greta Gerwig'}) @@ -727,7 +727,7 @@ UNWIND $movies AS movieTitle MERGE (greta)-[rel:$($relType)]->(m:Movie {title: movieTitle}) RETURN greta.name AS name, labels(greta) AS labels, type(rel) AS relType, collect(m.title) AS movies ---- -// end::dynamic_merge[] +// end::clauses_merge_dynamic_merge[] .Result [role="queryresult",options="footer",cols="3*