私はNeo4jの初心者です。サンプルで提供されているデータベースで作業しています(Link)。 同じ映画内で動作している各アクターとの間で新しい相対関係を作成しようとしています。私はNeo4j Cypherがクエリを実行していません
MATCH (p1:Actor)-[:ACTS_IN]->(:Movie)<-[:ACTS_IN]-(p2:Actor) WHERE id(p1)>id(p2) MERGE (p1)-[:ACTED_WITH]->(p2)
このクエリを実行しかし、未知の理由のために、それはいくつかの関係ではなく、他人が作成されます。私は、ノードタイプと関係タイプの両方をチェックするが、それらはすべて同じであると思われましたので、クエリはすべての場合に正しく実行されるはずです
RYこの事はちょうど、リンクからDBをダウンロードする上記のクエリを実行し、この2つの作品をチェックし、アバターの作品ではなく、このクエリはあなたが必要なものを行う必要がありますハートの戦争
MATCH p=(a)-[]-() WHERE a.title = "Hart's War" OR a.title="Avatar" RETURN p
残念ながらそのDBはのNeo4jのそれ以降のバージョンで動作するように更新されていない、私はそれはあなたが見ている行動を説明するのかはわからないが、あなたは、データを移行する必要があるだろう、しかしながら。 ':play movies'を使って組み込みムービーデータベースを使ってみましたか? – InverseFalcon
@InverseFalcon neo4jの設定ファイルに 'dbms.allow_format_migration = true'を追加するだけで、彼はあなたのためのフォーマットを移行します! – user3351109
あなたがリンクしたデータベースを試してみても、クエリーは正常に機能し、すべてのコアクターは正しく接続されているようです。 Neo4jのどのバージョンを使用していますか?グラフの結果に自動完成しましたか? – InverseFalcon