基础
查询关键字:MATCH
创建关键字:CREATE
删除关键字:DELETE
设置属性关键字:SET
设置关联关系:MERGE
统计总数关键字:COUNT
1. 查询语句
1.1 查询节点
// 查询所有节点
MATCH (n) RETURN n
// 查询所有标签总数
match (n) return count(n)
// 查询某个标签总数
match (n:Person) return count(n)
// 查询某个标签的全部节点
MATCH (n) RETURN n
// 查询某个标签中等于某个属性的节点
MATCH (n:SocialUser {name:'李白'}) RETURN n
// in的操作 查询n的节点名称为数组里的
MATCH (n:SocialUser) WHERE n.name in ['李白','杜甫'] RETURN n
// 查询所有下级节点,包含开始节点
MATCH (a:Person {name:'龙小弟'})-[r*0..]->(b) return b
// 查询所有下级节点,不包含开始节点(设置层级就修改r*n的n值)
MATCH (a:Person {name:'龙小弟'})-[r*1..]->(b) return b
// 查询所有执行本节点的关系,包含本节点
MATCH (a:Person {name:'龙傲天'})<-[r*0..]-(b) return b
// 查询所有执行本节点的关系,不包含本节点(设置层级就修改r*n的n值)
MATCH (a:Person {name:'龙傲天'})<-[r*1..]-(b) return b
1.2 查询关系
// 查询所有具有对外关系的节点
MATCH (a)-->() RETURN a
// 查询所有具有被指向关系的节点
MATCH ()-->(a) RETURN a
// 查询所有存在的关系
MATCH ()-[r]->() RETURN r
2. 创建语句
// 创建一个标签为Person的节点,节点有一个name属性,属性值为'John'
CREATE (n:Person{name:'John'}) RETURN n
// 给a节点设置一个age属性,属性值为34
MATCH (a:Person{name:'Liz'}) SET a.age = 34
// 给某个标签对外的所有关系增加属性
MATCH p=(Person)-[r]->() SET r={since:"2017-01-02"} RETURN p;
// 给某个标签对外的某个关系增加属性
MATCH p=(Person)-[r:BIGBROTHER ]->() SET r={since:"2017-01-02"} RETURN p;
// 给某个标签中某个对应属性的节点对外的某个关系增加属性
MATCH p=(Person {name:'n1'})-[r:BIGBROTHER ]->() SET r={since:"2017-01-02"} RETURN p;
3. 删除语句
// 删除所有节点和关系,MATCH是匹配操作,()代表所有节点,DELETE为删除操作
MATCH (n) DETACH DELETE n
// 删除a节点的test属性
MATCH ... REMOVE a.test
// 删除a节点
MATCH ... DELETE a
// 删除两个标签之间的某个关系
match (n:Person)<-[r:BIGBROTHER]-(m:Person) DELETE r
// 删除两个标签中某个节点之间的某个关系
match (n:Person {name:'n1'})<-[r:BIGBROTHER]-(m:Person {name:'n2'}) DELETE r