5

配列プロパティを持つNeo4Jノードがある場合、配列リテラルに一致するノードのみを返すCypherクエリを作成するにはどうすればよいですか?

コンソールを使用して、「list」という配列プロパティを持つノードを作成しました。

neo4j-sh (0)$ create n = {list: [1,2,3]};
==> +-------------------+
==> | No data returned. |
==> +-------------------+
==> Nodes created: 1
==> Properties set: 1
==> 83 ms

neo4j-sh (0)$ start n=node(1) return n;
==> +-----------------------+
==> | n                     |
==> +-----------------------+
==> | Node[1]{list:[1,2,3]} |
==> +-----------------------+
==> 1 row
==> 1 ms

ただし、私のクエリは、配列リテラルに一致するWHERE句を指定して作成されたばかりのノードを返しません。

neo4j-sh (0)$ start n=node(1) where n.list=[1,2,3] return n;
==> +---+
==> | n |
==> +---+
==> +---+
==> 0 row
==> 0 ms

Cypherを誤用している可能性は十分にあります。Cypherで正確な配列プロパティのマッチングを行うためのヒントがあれば役立ちます。

4

2 に答える 2

6

コンソールは常にNeoj4の最新のSNAPSHOTビルドを実行しています。バージョンはCypherSyntaxparswerを参照しているので、より明確に指摘します:)

現在、Cypherでの配列処理に関していくつかの修正が行われています。https://github.com/neo4j/community/pull/815およびhttps://github.com/neo4j/community/issues/818を参照ください。コンソールを機能させるもの。これは1.8.M07以降に統合されているため、ローカルで機能させるには、最新の1.8.-SNAPSHOTのいずれかをダウンロードするか、GITHUBからビルドするか、まもなくリリースされる1.8.M08を待ちます。

/ peter

于 2012-08-30T08:07:56.937 に答える
3

どのバージョンのNeo4jを使用していますか?

あなたの同じコードは1.8M07で私のために働きます。

http://console.neo4j.org/?id=p9cy6l

更新: Webクライアントを介したローカルインストールでも同じ結果が得られます(結果は得られません)。多分それはウェブクライアントの問題ですか?

于 2012-08-29T14:08:51.447 に答える