Ich habe eine Neo4j-Abfrage, wo ich versuche, alle distinct IDs und dann, für jede ID, alle Knoten zurückgeben, die diese ID übereinstimmen. Hier ist, was meine Frage wie folgt aussieht:Neo4j 'Übereinstimmung' in 'Unroll' -Operation
match (x:Log) with collect(distinct x.id) as ids
unwind ids as i
match (y:Log {id:i}) return y;
Ich hatte gehofft, dass die Ergebnisse dieser Abfrage würde von id aka gruppiert werden müssen, mehrere Knoten pro Zeile, wobei jede Zeile alle Knoten enthält, die eine ID teilen. Stattdessen gibt es nur einen Knoten pro Zeile zurück und es gibt mehrere Zeilen derselben ID. Wie bekomme ich die Ergebnisse gruppiert nach ID?
Beispiel: Angenommen, es gibt fünf Knoten für Label Log. Zwei der Log-Knoten haben id='abc'
und drei von ihnen haben id='123'
. Momentan gibt meine Abfrage fünf Zeilen zurück, die jeweils einen Knoten enthalten, aber ich möchte, dass sie zwei Zeilen zurückgibt: eine Zeile, die alle Protokollknoten von id='123'
enthält, und eine weitere Zeile, die alle Protokollknoten von id='abc'
enthält.
, das funktioniert, dank @cybersam – fatash