web-dev-qa-db-ja.com

Neo4j Cypherの複数の無関係なクエリ?

http://localhost:7474/browser/複数の unrelated クエリをサポートしていませんか?

このコード:

MATCH (a {cond:'1'}), (b {cond:'x'}) CREATE a-[:rel]->b
MATCH (a {cond:'2'}), (b {cond:'y'}) CREATE a-[:rel]->b
MATCH (a {cond:'3'}), (b {cond:'z'}) CREATE a-[:rel]->b

エラーが発生します:

CREATEとMATCHの間にはWITHが必要です

しかし、私のクエリは関連していないので、WITHは必要ないと思います。

一度に1行ずつ入力せずに上記を行うにはどうすればよいですか?

17
laggingreflex

最近のリリースでは、開発者は複数のクエリを実行するオプションをNeo4jブラウザに追加しました。

ブラウザ設定を開き、マルチステートメントクエリエディタを有効にするをクリックします。

次に、各クエリの最後にセミコロンを付けて、すべてブラウザコンソールにスローします。

Screenshot

これがどのように見えるかです

Screenshot

8

回避策として、次のことができます。

MATCH (a {cond:'1'}), (b {cond:'x'}) CREATE a-[:rel]->b
WITH 1 as dummy
MATCH (a {cond:'2'}), (b {cond:'y'}) CREATE a-[:rel]->b
WITH 1 as dummy
MATCH (a {cond:'3'}), (b {cond:'z'}) CREATE a-[:rel]->b

インポートブログの投稿も参照してください: http://blog.neo4j.org/2014/01/importing-data-to-neo4j-spreadsheet-way.html

17
Michael Hunger

Cypher-Shellコマンドラインツールを使用して、Neo4jに複数のクエリを送信できます。

cypher-Shell --format plain < query.txt

ここで、query.txtには、セミコロンで区切られた複数の独立したクエリが含まれています。これは、cypher-Shellを開始すると、インタラクティブに機能します。

4
kefa

Neo4jブラウザを介して複数の無関係なクエリを一度に送信する方法を知りません。ただし、RESTレベルでは、これは トランザクションHTTPエンドポイント を使用することで完全に可能です。

3