📜  Neo4j使用MATCH选择数据(1)

📅  最后修改于: 2023-12-03 15:33:05.884000             🧑  作者: Mango

Neo4j使用MATCH选择数据

在Neo4j中,MATCH语句可以帮助我们选择和过滤出需要的数据。MATCH语句用于从图数据库中匹配一组或多组节点和关系。下面是Neo4j中MATCH语句的使用:

MATCH (n)
RETURN n

以上语句会匹配到所有的节点,并返回这些节点。其中n是变量名,可以根据自己的需要定义。如果想要匹配特定的节点类型,可以在MATCH语句中指定该节点类型:

MATCH (p:Person)
RETURN p

以上语句匹配所有标记为Person的节点,并返回这些节点。

如果需要采用多个约束条件的话,可以利用WHERE语句筛选:

MATCH (p:Person)
WHERE p.age > 18 AND p.gender = 'male'
RETURN p

以上语句筛选年龄大于18岁且性别为男性的Person节点,并返回这些节点。

除此之外,在MATCH语句中还可以进行多重匹配:

MATCH (p1:Person)-[:FRIEND]-(p2:Person)
RETURN p1, p2

以上语句匹配两个Person节点,以FRIEND关系连接,并返回这些节点。

在MATCH语句中,也可以上下文引用其他的匹配到的节点:

MATCH (p1:Person)-[:FRIEND]-(p2:Person)-[:FRIEND]-(p3:Person)
WHERE p1.name = 'Alice' AND p3.name = 'David'
RETURN p2

以上语句匹配一段链路式的关系,最终返回Bob节点,他处于Alice和David之间。

总的来说,MATCH语句非常强大,可以根据自己的需求娴熟运用。

以上内容通过Markdown输出。