2016-07-26 9 views
1

neo4j 3.0.3でシンプルなCypherクエリーを実行しようとしています。次のように私のクエリは次のとおりです。neo4j cypher 3.0の変数へのパスの割り当て中にエラーが発生しました

MATCH p=(me)<-[:contains*1..10000]-(end) RETURN p; 

私はこのクエリを実行しようとすると、私は次のエラーを取得する:

WARNING: Invalid input '=': expected an identifier character, node labels, a property map, a relationship pattern, ',', USING, WHERE, LOAD CSV, START, MATCH, UNWIND, MERGE, CREATE, SET, DELETE, REMOVE, FOREACH, WITH, CALL, RETURN, UNION, ';' or end of input (line 1, column 8 (offset: 7)) "MATCH p=(me)<-[:contains*1..10000]-(end) RETURN p" ^

私はCYPHERの使用バージョン2.3を喜ばせるために、シェルを伝えることで、同じクエリを実行すると、すべてが正常である:

CYPHER 2.3 MATCH p=(me)<-[:contains*1..10000]-(end) WHERE id(me)=51 AND ALL(x in nodes(p) WHERE x.rtype <> 'unknown') AND NOT (end)<-[:contains]-(:res) AND end.rtype='project' RETURN p; 

私は次のクエリでの例の場合と同様に、変数pへのパスの割り当てを削除します。

oを
MATCH (me)<-[:contains*1..10000]-(end) RETURN me; 

このクエリは正常に実行されます。

私はcypherのマニュアルを読んで、マッチ節を使って変数にパスを割り当てるコードを自分のコードと同じように使っているたくさんの例を見つけました。

私が間違っていることの手掛かりはありますか?

+0

エラーを再現できません。 'CYPHER 2.3'の前に行を編集しましたか、もう一度タイプしましたか?あなたは "="のような別の文字を入力することはできませんでしたか? –

+0

@FrankPavageau:下記の私の答えを見てください。実際には依存関係の問題でした。これを調査していただきありがとうございます。 – Valentin

答えて

0

これは、実際にはプロジェクトの設定に問題があったことが分かります。私はmavenによって管理される大きなプロジェクトでneo4jを使用しています。古いバージョンのparboiledがneo4j 3で使用されているバージョンを上書きするような設定でした。この古いバージョンでは、これらのクエリを正常に解析できませんでした。

関連する問題