1、概述
对于neo4j数据库的查询操作,除了比较简单的查询语句之外还有较为负载的查询语句,主要包含以下内容:
- OPTINAL MATCH
- where语句详细查询
- 聚合
2、OPTIONAL MATCH
optional match的匹配模式与match类似。不同的是,在没有匹配到的部分使用null进行填充。该功能类似sql语句中的 outer join 功能。
在之前的movie graph中我们注意存在这样一个节点
这个电影只有参演演员但没有导演,如果我们使用传统的match语句查询这个电影的出品人可以使用以下语句
match (movie:Movie{title:"A Few Good Men"})
<-[r:PRODUCED]-(p:Person)
return p
返回结果如下图所示:
如果使用 optional match改写上面语句,效果如下
match (movie:Movie{title:"A Few Good Men"})
optional match (movie)<-[:PRODUCED]-(p)
return p