チュートリアルには、次のCypherクエリがあります。
MATCH (gene:Person)-[:ACTED_IN]->()<-[:ACTED_IN]-(other)
WHERE gene.name="Gene Hackman"
RETURN DISTINCT other;
私は一般的にクエリを理解しています。ACTED_INが「any」ノードであるすべてのPersonノードに一致します。ここで、gene:Personノードのnameプロパティは「GeneHackman」と同じです。
次に、GeneHackmanと同じ「any」ノードのセットをACTED_INする別個の「other」ノードのセットを返します。
返されるのは、GeneHackmanノードを含まないノードのセットです。
返されるノードのセットには、GeneHackmanノードが含まれているようです。Cypherクエリで「GeneHackman」という名前を含むノードを明示的に除外するものはありません。したがって、ジーンハックマンと同じ映画で演じたノードのセットには、ジーンハックマンも含める必要があります。
適用されている固有のルールがあると思いますが、これまでのチュートリアルでは、そのルールが何であるかを説明していないか、それを見逃しました:^)。
ありがとう、トッド
ルールは、パターン内の関係は再利用されないということです。最初の:ACTED_IN関係をたどると、同じパターンマッチでそれを再びたどることはできません。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加