CQL命令 | 用法 |
---|---|
CREATE | 创建节点,关系,属性 |
MATCH | 检索先关的节点,关系,属性 |
MERGE | 检测存在则返回,否则创建 |
RETURE | 返回查询结果 |
WHERE | 提供条件过滤检索数据 |
DELETE | 删除节点和关系 |
REMOVE | 删除节点和关系的属性 |
ORDER BY | 排序检索数据 |
SET | 添加或更新标签 |
LIMIT | 查询前多少个 |
skip | 跳过前多少个 |
名称 | 描述 |
---|---|
节点 | () |
属性 | [] |
关系 | - |
指向 | > 或 < |
https://blog.csdn.net/qq_45711950/article/details/123476345
LOAD CSV FROM "file:///a.csv" AS line CREATE (:person { name: line[1], age: toInteger(line[2])})
(farmer)-[:help]->(snake)
MATCH (n) RETURN n ---得到所有节点
MATCH (n:漫威宇宙) RETUREN n
MATCH p=()-[r:'同学']->() RETURN p LIMIT 10
MATCH (n:person {name:'迪迦'}),(m:relation) where m.from='迪迦' return n.name,m.relation,m.to
CREATE (n) ---创建单节点
CREATE (n),(m) ---创建多个节点
CREATE (n:Person) ---创建带一个标签的节点
CREATE (n:Person { name: 'Andy', title: 'Developer' }) ---创建一个节点带标签和属性
#
create (:student{name:"小红"}),(:student {name:"张三"}),(:student {name:"小明"})
match (n:student {name:"小明"}),(m:student {name:"小红"})
create (n)-[r:同学]->(m) return n.name,type(r),m.name
返回值—n.name
返回节点 n
如:MATCH (n:'妖神记') RETURN id(n),n.name,n.tail,n.relation
#查询
MATCH (n:person) where n.name='小明' or n.name='小刚' RETURN n
#创建关系
match (n:person),(m:person) where n.name='小明' and m.name='小刚'
create (n)-[r:同学]->(m) return n.name,type(r),m.name
# 删除节点 (前提:节点不存在关系)
MATCH (n:person{name:"小明"}) delete n
# 删除关系
MATCH (n:person{name:"小明"})<-[r]-(m) delete r return type(r)
#创建
create (n:student:person {name:'张三',age:18})
#删除标签
match (n:person {name:'张三'}) remove n:person return n
#删除属性
MATCH (n:student {name:'张三'}) remove n.age RETURN n
向现有节点或关系添加新属性;
添加或更新属性值;
#更新属性值
MATCH (n:student {name:"张三"}) set n.name='张四' return n
#添加属性值
MATCH (n:student {name:"张四"}) set n.age=20 return n
默认按升序排序;
降序需要使用DESC子句;
#按照 id 降序排列
MATCH (n:`斗破`) RETURN id(n),n.name order by id(n) desc
#UNION 不返回重复的行
MATCH (n:stu) RETURN n.name as name
UNION
MATCH (m:per) RETURN m.name as name
#UNION ALL 返回重复的行
MATCH (n:stu) RETURN n.name as name
UNION all
MATCH (m:per) RETURN m.name as name
判断节点或关系的属性的缺失或未定义
sex值设置为''(['']不算null)
match (n:student {name:'张三'}) set n.age=18,n.sex='' return n
查询sex值不为null的节点
match (n:student {name:"张三"}) where n.sex is not null return n
为CQL命令提供值的集合
match (n:student) where n.name in["张三","小红"] return n.name
# 创建索引
create index on :`stu` (name)
# 删除索引
drop index on :`stu` (name)
#创建唯一约束
create constraint on (n:stu) assert n.name is unique
#删除唯一约束
drop constraint on (n:stu) assert n.name is unique
match (n:'student') return distinct(n.name)