NEO4J基本操作介绍

一、Cypher基本语法
1)节点操作
1、CREATE创建节点
语法规则:CREATE (节点名: 标签 {节点属性})
例如:CREATE (ee:Person { name: “Emil”, from: “Sweden”, klout: 99 });
2、DELETE删除节点
语法规则:MATCH (节点名:标签) DELETE 节点名
例如:MATCH (n:Person) DELETE n;
进行精确删除,可配合过滤条件一块使用,例如:
MATCH (n:Person{sfzh:’123456’}) DELETE n;

MATCH (n:Person) where n.sfzh=’123456’ DELETE n;
3、MATCH查找节点
语法规则:MATCH (变量名:匹配的标签) WHERE 过滤结果 RETURN 返回特定结果
例如:MATCH (n:Person) WHERE n.name=’张三’ return n.sfzh,n.name;
4、SET更新节点属性
语法规则:MATCH (变量名: 匹配的标签) WHERE 过滤结果 SET 变量名.属性名=值 RETURN 变量名
例如:MATCH (n:Person) WHERE n.sfzh=’123456’ SET n.name=’李四’ RETURN n;

MATCH (n:Person{sfzh:’123456’}) SET n.name=’李四’ RETURN n;
2)关系操作
1、CREATE创建关系
语法规则:CREATE (节点名 1)-[:关系名 {关系属性}]->(节点名 2)
例如:
create (ee:Person {name: “Emil”, from: “Sweden”, klout: 99})
create (et:Person {name: “et”})
create (et)-[:KNOWS {by: “swimming”}]->(ee)
return ee, et
2、MATCH匹配关系
语法规则:MATCH (匹配的变量名:匹配的标签)-[关系变量:关系标签]-(匹配的变量名:匹配的标签) WHERE 过滤结果 RETURN 返回特定结果
例如:MATCH (s:Person)-[r:LiveTogether]->(t:Person) WHERE s.sfzh=’123456’ RETURN r,t;
3、DELETE删除关系
语法规则:MATCH (匹配的变量名:匹配的标签)-[关系变量:关系标签]-(匹配的变量名:匹配的标签) WHERE 过滤结果 DELETE 关系变量
例如:MATCH (s:Person)-[r:LiveTogether]->(t:Person) WHERE s.sfzh=’123456’ DELETE r;
4、SET更新关系属性
语法规则:MATCH (匹配的变量名:匹配的标签)-[关系变量:关系标签]-(匹配的变量名:匹配的标签) WHERE 过滤结果 SET 关系变量.属性名称=属性值 RETURN 返回特定结果
例如:MATCH (s:Person)-[r:LiveTogether]->(t:Person) WHERE s.sfzh=’123456’ AND t.sfzh=‘456789’ SET r.relation=’同住’ RETURN r;
3)其它操作
1、MERGE命令
MERGE命令是CREATE命令和MATCH命令的组合。搜索给定模式,如果存在,则返回结果;如果不存在,则创建新的节点/关系并返回结果。
例如:MERGE (n:Person{sfzh:’123456’,name:’张三’})
2、删除节点和关系
如果节点上有关系时,单纯只删除节点是不行的,需要先删除节点上的关系,再删除节点。可使用DETACH DELETE连同关系和节点一同删除。
例如:MATCH (n:Person{sfzh:’123456’}) DETACH DELETE n;
3、返回固定条数数据
使用LIMIT命令,可返回查询固定条数。
例如:MATCH (n:Person) RETURN n LIMIT 10;

更多使用请查看https://www.w3cschool.cn/neo4j/

猜你喜欢

转载自blog.csdn.net/lanselianyu/article/details/89516566