0
OPTIONAL MATCH
ステートメントで行うことを試みている複雑なクエリがあります。私が何をしたいかNeo4j Cypher - 列をマージして、すべての値と異なる値を取得
MATCH (p:Person {name:'Victoria'})
OPTIONAL MATCH (p)-[:MANAGES]->(:Office)<-[MERGES_INTO*0..]-(:Office)<-[:WORKS_WITH]-(target1)
OPTIONAL MATCH (p)-[:SUPPORTS]->(:Office)<-[MERGES_INTO*0..]-(:Office)<-[:WORKS_WITH]-(target2)
OPTIONAL MATCH (p)-[:ASSISTS]->(:Person)-[*0..1]->(:Group)<--(target3)
OPTIONAL MATCH (p)-->(:Group)<--(target4)
RETURN DISTINCT target1,target2,target3,target4
は、彼らが代わりに戻って別の列としてtarget1
、target2
、target3
、およびtarget4
を得ることのtarget
と呼ばれる単一の列であるかのような結果を得ることである:それはこのようになります。
4つの潜在的なターゲット列を1つの列の結果セットとして返すように、それらを収集/巻き戻しする方法はありますか?
UNION
の4つの別々のクエリを使用して目的の結果を得ることができますが、これはtargetという値を返しますが、より良い方法があるかどうかは疑問でした。
ありがとうございました。
これはまさに私が 'collect'と' with'でハンドルを取得する必要がある例です。どうもありがとう。 –