如果你想查看图数据库中的所有节点和关系,可以使用以下查询:
Cypher
深色版本
MATCH (n)-[r]->(m)
RETURN n, r, m
n
和 m
表示节点。r
表示两个节点之间的关系。如果只想查看所有的节点,可以使用以下查询:
Cypher
深色版本
MATCH (n)
RETURN n
如果只想查看所有的关系,可以使用以下查询:
Cypher
深色版本
MATCH ()-[r]->()
RETURN r
如果你的节点有特定的标签(例如 Person
),可以通过标签过滤节点:
Cypher
深色版本
MATCH (n:Person)
RETURN n
Person
标签的节点。如果你的关系有特定的类型(例如 KNOWS
),可以通过关系类型过滤:
Cypher
深色版本
MATCH (n)-[r:KNOWS]->(m)
RETURN n, r, m
KNOWS
关系连接的节点对。当图数据库中数据量较大时,可以通过 LIMIT
限制返回的结果数量:
Cypher
深色版本
MATCH (n)-[r]->(m)
RETURN n, r, m
LIMIT 50
如果你想查看节点和关系的具体属性,可以使用以下查询:
Cypher
深色版本
MATCH (n)-[r]->(m)
RETURN n.name AS NodeName, type(r) AS RelationType, m.name AS TargetNodeName
name
属性、关系的类型以及目标节点的 name
属性。如果你想统计图数据库中节点和关系的总数,可以使用以下查询:
Cypher
深色版本
MATCH (n)
RETURN count(n) AS NodeCount
Cypher
深色版本
MATCH ()-[r]->()
RETURN count(r) AS RelationshipCount
孤立节点是指没有与其他节点建立任何关系的节点。你可以通过以下查询找到这些节点:
Cypher
深色版本
MATCH (n)
WHERE NOT (n)--()
RETURN n
(n)--()
表示节点 n
有任何关系。NOT
表示排除有关系的节点。如果你想查找两个节点之间的路径,可以使用以下查询:
Cypher
深色版本
MATCH path = (n)-[*]->(m)
WHERE n.name = 'Alice' AND m.name = 'Bob'
RETURN path
[*]
表示任意长度的路径。Alice
到 Bob
的所有路径。在 Neo4j 浏览器中运行上述查询后,结果会以图形化的方式显示出来: