以下是一个示例代码,演示了如何使用Neo4j图数据库进行按节点标签查询和按关系查询:
按节点标签查询:
from neo4j import GraphDatabase
# 连接到Neo4j数据库
uri = "bolt://localhost:7687"
driver = GraphDatabase.driver(uri, auth=("neo4j", "password"))
# 创建一个会话
with driver.session() as session:
# 执行按节点标签查询
result = session.run("MATCH (n:Person) RETURN n.name")
# 处理查询结果
for record in result:
print(record["n.name"])
# 关闭数据库连接
driver.close()
按关系查询:
from neo4j import GraphDatabase
# 连接到Neo4j数据库
uri = "bolt://localhost:7687"
driver = GraphDatabase.driver(uri, auth=("neo4j", "password"))
# 创建一个会话
with driver.session() as session:
# 执行按关系查询
result = session.run("MATCH (a)-[:FRIENDS_WITH]->(b) RETURN a.name, b.name")
# 处理查询结果
for record in result:
print(record["a.name"], "is friends with", record["b.name"])
# 关闭数据库连接
driver.close()
以上代码示例假设Neo4j数据库正在本地运行,URI和身份验证信息需要根据实际情况进行修改。代码使用Neo4j Python驱动程序来连接和执行查询,然后使用Cypher查询语言来编写查询语句。按节点标签查询使用MATCH (n:Person) RETURN n.name
语句,其中:Person
是一个节点标签。按关系查询使用MATCH (a)-[:FRIENDS_WITH]->(b) RETURN a.name, b.name
语句,其中FRIENDS_WITH
是一个关系类型。查询结果可以通过迭代结果集并使用记录中的键访问。
上一篇:按季度细分的工资单SQL查询
下一篇:按节点拆分XML