首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Neo4j循环查询中匹配为逻辑AND/OR

在Neo4j循环查询中匹配为逻辑AND/OR
EN

Stack Overflow用户
提问于 2018-08-15 11:27:28
回答 1查看 548关注 0票数 1

我是Neo4j新手,我需要查询一个匹配图或任何子图,如下所示:

所以我尝试了可选匹配,但我意识到它不会给我提供所需的结果。这是我之前尝试过的查询。

代码语言:javascript
复制
OPTIONAL MATCH (w:W)-[:WRITES]->(a1:A{name:"A1"})
WITH w,a1
OPTIONAL MATCH (w)-[:WRITES]->(a2:A{name:"A2"})
WITH w,a1,a2
OPTIONAL MATCH (w)-[:WRITES]->(a3:A{name:"A3"})
WITH w,a1,a2,a3
OPTIONAL MATCH (w)-[:WRITES]->(a4:A{name:"A4"})
RETURN w,a1,a2,a3,a4

尽管它是一个可选的匹配,但它仍然是一个逻辑AND匹配与外部连接(在SQL上下文中)

在我的例子中,我在每个匹配中都需要OR和and结果,这意味着它应该匹配上面解释的图的任何子图。

因此,我需要获取结果,如下所示。

代码语言:javascript
复制
MATCH (w:W)-[:WRITES]->(a1:A{name:"A1"})

OR/AND

代码语言:javascript
复制
MATCH (w)-[:WRITES]->(a2:A{name:"A2"})

OR/AND

代码语言:javascript
复制
MATCH (w)-[:WRITES]->(a3:A{name:"A3"})

OR/AND

代码语言:javascript
复制
MATCH (w)-[:WRITES]->(a4:A{name:"A4"})
RETURN w,a1,a2,a3,a4

有没有可能通过Neo4j密码查询来达到我的要求?

我的结果集应该是这样的。

代码语言:javascript
复制
W, A1, A2, A3, A4
{name:w1,....}, {name:A1,....}, {name:A2,....}, {name:A3,....}, {name:A4,....}
{name:w1,....}, null, {name:A2,....}, null, {name:A4,....}
{name:w1,....}, null, null, null, {name:A4,....}
{name:w1,....}, {name:A1,....}, {name:A2,....}, null, null
{name:w1,....}, {name:A1,....}, null, {name:A3,....}, {name:A4,....}
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51852533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档