Ich versuche zu verstehen, welcher Art von Chiffre "Datenstruktur" bestimmte Identifikatoren oder Ausdrücke entsprechen, je nachdem, wie und wo sie verwendet werden. Im Folgenden listet ich Beispiele auf, auf die ich stieß. Bitte sagen Sie mir, ob ich es richtig gemacht habe (in den Kommentaren) oder ob mir etwas fehlt.
%Vor%Ich denke, der einfachste Weg, all diese Fragen zu beantworten, besteht darin, Kennungen an Funktionen zu übergeben, die einen Fehler auslösen, der Ihnen sagt, was sie erwartet und was sie tatsächlich erhalten hat. Ich denke, Sie sollten auch vorsichtig sein, wie Sie die Wortsammlung verwenden, da sie nicht korrekt ist.
MATCH (n) RETURN n;
n
ist ein Node
.
MATCH ()-[r]-() RETURN r;
r
ist ein Relationship
.
MATCH p = ()-[]-()
p
ist ein Path
.
MATCH (n) WITH COLLECT(n) AS c RETURN c;
c
ist ein Collection<Node>
.
MATCH ()-[r]-() WITH COLLECT(r) AS c RETURN c;
c
ist ein Collection<Relationship>
.
MATCH p = ()-[]-() WITH COLLECT(p) AS c RETURN c;
c
ist ein Collection<Path>
.
MATCH p = ()-[r*..2]-() RETURN p, r;
p
ist ein Path
.
r
ist ein Collection<Relationship>
.
Und um auf Ihr spezifisches Beispiel zu verweisen:
MATCH p = (a)-[sp1:CF*]->(b)-[sp12:CF]->(c)
p
ist ein Path
.
a
ist ein Node
.
sp1
ist ein Collection<Relationship>
.
b
ist ein Node
.
sp12
ist ein Relationship
.
c
ist ein Node
.
Und ich bin mir nicht sicher, was Sie über die WHERE
-Klauseln fragen. Vielleicht kannst du mit einer Bearbeitung deine Frage klären.