0

私はこのクエリをparamsを使って機能させようとしていましたが、うまくいきませんでした。私はいつも同じエラーを受けていました。

expected either node or relationship here
"start n={start} match n-[r:{rel}]-() return n, n.name, r, r.since"
         ^

次に、パラメーターを削除{start}し、関係にバックチップ (`) を使用したところ、魅力的に機能しました。

start n=node(*) match n-[r:`{rel}`]-() return n, n.name, r, r.since

では、params を使用する適切な方法は何ですか?クエリのどこで使用できますか?

念のため、バックチップも{start}機能しません。次のリクエストも機能しません。

POST /db/data/cypher {"query": "start n=node({start}) match n-[r:`{rel}`]-() return n, n.name, r, r.since", "params": {"start": "*", "rel": "l353456"}}

私は1.9M01を使用しています

4

2 に答える 2

3

バックティックstart(start はキーワードであるため) は次のようになります。

POST /db/data/cypher {"query" : "start n=node({`start`}) return n", "params": {"start":0}}

Neo4j Http コンソールでテスト済み。

于 2012-11-05T01:24:37.873 に答える
0

ハビエル、http://docs.neo4j.org/chunked/snapshot/cypher-parameters.htmlはパターンをリストしているので、あなたの場合は私が思う

start n=({start}) match n-[r:XXX]-() return n, n.name, r, r.since

できることです。リレーションシップ タイプは、クエリの構造を変更するものと見なされるため、パラメータ化できません。クエリを再送信するか、クライアント コードでクエリを連結する必要があります。

于 2012-11-05T01:16:40.420 に答える