質問
Neo4J 1.8.3を使用しています
のようなデータを返すクエリを実行しています
A 1 X
A 2 Y
B 3 Z
C 4 Q
C 5 X
.
データを
として提示することをお願いしますA 1,2 X,Y
B 3 Z
C 4,5 Q,X
.
これをできるのか教えてください。 事前にありがとうございます。
解決
これは私がこの正確な問題に直面したときにしたことです:
私が未解決のように、あなたがこれをすることができないことはありません。Withステートメントを使用してクエリを解除し、Cypherを一部のノードを中途半端に集める必要があり、後続の一致時に収集操作を実行できます。それはどういう意味ですか?この例を検討してください:
現在のクエリがこのようなものである場合:
MATCH (a)--(b)--(c) RETURN a,b,c
.
次の
に変更する必要があります。MATCH {{ Perform match here just for node type 'a' }} WHERE {{ conditions if any }}
WITH a
MATCH (a)--{{ Perform match for 'b' and 'c' here using 'a' }}
RETURN a,collect(b) as first, collect(c) as second
ORDER BY length(first, second) DESC
.
あなたが私が言おうとしていることを理解しているなら、それから先に行き、試してみる。それ以外の場合、先に移動する最善の方法は、 neo4j console でサンプルデータセットを作成することです。ここでそれを共有するので、私たちはあなたが正確に何をしているのかを正確に見ることができます。
他のヒント
あなたの元の戻り句がある場合:
RETURN a, b, c
.
試してみてください:
RETURN a, collect(b), collect(c)
. 所属していません StackOverflow