Neo4j Cypher中有多个不相关的查询?

lag*_*lex 17 neo4j cypher

难道http://localhost:7474/browser/不支持多个不相关的查询?

这段代码:

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
Run Code Online (Sandbox Code Playgroud)

导致错误:

CREATE和MATCH之间需要WITH

但由于我的查询不相关,我认为我不需要WITH.

如何在不必一次一行输入的情况下完成上述操作?

Mic*_*ger 17

作为一种解决方法,您可以:

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
Run Code Online (Sandbox Code Playgroud)

另请参阅导入博客文章:http://blog.neo4j.org/2014/01/importing-data-to-neo4j-spreadsheet-way.html

  • 请注意,"WITH 1 as dummy"之后的子查询将在前一个查询返回的每一行中执行一次.使用像`WITH count(*)as dummy这样的聚合函数将确保后续查询只执行一次. (9认同)

Vas*_*kyi 7

在最新版本中,开发人员在Neo4j浏览器中添加了一个选项以执行多个查询。

打开浏览器设置,然后单击启用多语句查询编辑器

然后,只需在每个查询的末尾加上分号,然后将其全部放入浏览器控制台即可。

屏幕截图

这是它的样子

屏幕截图