cypher 查询语句

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

cypher 查询语句
Cypher是一种查询语言,用于对Neo4j图数据库进行数据查询和操作。

它是一种声明性的查询语言,旨在简化对图数据的查询和分析。

本文将介绍Cypher查询语句的基本语法和常用用法。

一、基本语法
1. 创建节点
使用CREATE语句可以创建一个节点,并指定节点的标签和属性。

例如:
CREATE (p:Person{name:'John', age:25})
2. 创建关系
使用CREATE语句可以创建两个节点之间的关系,并指定关系的类型和属性。

例如:
MATCH (p1:Person{name:'John'}), (p2:Person{name:'Mary'})
CREATE (p1)-[:FRIENDS{since:2020}]->(p2)
3. 查询节点
使用MATCH语句可以查询满足指定条件的节点,并返回结果。

例如:
MATCH (p:Person{name:'John'})
RETURN p
4. 查询关系
使用MATCH语句可以查询满足指定条件的关系,并返回结果。

例如:
MATCH (:Person{name:'John'})-[:FRIENDS]->(p:Person)
RETURN p
5. 更新节点属性
使用SET语句可以更新节点的属性。

例如:
MATCH (p:Person{name:'John'})
SET p.age = 26
6. 更新关系属性
使用SET语句可以更新关系的属性。

例如:
MATCH (:Person{name:'John'})-[r:FRIENDS]->(:Person{name:'Mary'})
SET r.since = 2021
7. 删除节点
使用DETACH DELETE语句可以删除指定的节点,并删除与该节点相关的所有关系。

例如:
MATCH (p:Person{name:'John'})
DETACH DELETE p
8. 删除关系
使用DELETE语句可以删除指定的关系。

例如:
MATCH (:Person{name:'John'})-[r:FRIENDS]->(:Person{name:'Mary'}) DELETE r
二、常用用法
1. 查询节点及其属性
使用RETURN语句可以查询指定节点及其属性。

例如:
MATCH (p:Person)
RETURN , p.age
2. 查询指定关系的节点
使用MATCH语句可以查询满足指定关系的节点,并返回结果。

例如:MATCH (p:Person)-[:FRIENDS]->(:Person{name:'Mary'})
RETURN , p.age
3. 查询节点的属性范围
使用WHERE语句可以查询节点属性的范围。

例如:
MATCH (p:Person)
WHERE p.age > 20 AND p.age < 30
RETURN , p.age
4. 查询节点的关系路径
使用MATCH语句可以查询节点之间的关系路径,并返回结果。

例如:
MATCH path = (p1:Person{name:'John'})-[:FRIENDS*2]-(p2:Person)
RETURN ,
5. 查询节点的度数
使用MATCH语句可以查询节点的度数,并返回结果。

例如:
MATCH (p:Person{name:'John'})
RETURN size((p)-[:FRIENDS]->()), size((p)<-[:FRIENDS]-())
6. 查询节点的最短路径
使用MATCH语句可以查询节点之间的最短路径,并返回结果。

例如:
MATCH path = shortestPath((p1:Person{name:'John'})-[:FRIENDS*]-
(p2:Person{name:'Mary'}))
RETURN length(path)
三、总结
Cypher查询语句是一种强大而灵活的查询语言,可以帮助我们轻松地对图数据进行查询和操作。

本文介绍了Cypher查询语句的基本语法和常用用法,希望能够帮助读者更好地理解和使用Cypher查询语句。

通过灵活运用Cypher查询语句,我们可以更加高效地进行图数据的分析和挖掘。

相关文档
最新文档