常用cypher语句

1.查询
简单查询

查询10个Person节点

match (n:Person) return n limit 10    

查询Person节点与Phone节点中有HAS_PHONE关系

match  (n:Person)-[:HAS_PHONE]->(p:Phone) return n,p

查询10条关系:Person节点与Phone节点中有HAS_PHONE关系,且Person节点的name=‘姓名6’

match  (n:Person)-[:HAS_PHONE]->(p:Phone) where n.name="姓名6" return n,p limit 20   
多维度查询

查询以下关系:Person节点n和Phone节点p1拥有HAS_PHONE关系,且p1节点与另一个Phone节点p2拥有CALL关系

match  (n:Person)-[:HAS_PHONE]->(p1:Phone)-[:CALL]->(p2:Phone)   
关系查询

查询任意节点与任意节点间有CALL关系的关系

match p=()-[:CALL]->()
正则查询

查询Users所有节点中,name符合正则’Jack.*'的节点

match (n:Users) where n.name=~'Jack.*' return n
包含查询

查询Users所有节点中,name中包含’J’的节点

match (n:Users) where n.name contains 'J' return n
2.创建
简单创建

创建一个Person-LOVES->Dog的关系

create (n:Person)-[:LOVES]->(m:Dog)
属性创建

创建Person-FEAR->Tiger的关系,且Person.name=‘李四’,FEAR.Level=1,Tiger.type=‘东北虎’

create (n:Person{name:"李四"})-[:FEAR(Level:1)]->(M:Tiger{type:"东北虎"})
给两个没有关系的实体创建关系

创建一个关系k,使得name=“王五”的Person与name:"赵六"的Person有KNOW的关系

match (n:Person{name:"王五"}), (m:Person{name:"赵六"})
create (n)-[k:KNOW]->(m) return k
有则返回,没有则创建:merge

如果创建的关系已存在,则返回该关系,如果创建的关系不存在,则创建

match (n:Person{name:"王五"}), (m:Person{name:"赵六"})
merge (n)-[k:KNOW]->(m) return k
3.删除
删除关系

删除name="李四"的Person节点与Tiger节点间的FEAR关系

match (n:Person{name:"李四"})-[f:FEAR]->(M:Tiger)
delete f
删除实体

删除name="李四"的Person节点

match (n:Person{name:"李四"})
delete n
删除重复节点

如果有多个name=“张三”的People节点,删除只保留一个

match (p:People{name:"张三"}) with p skip 1 delete p
4.修改
修改属性

给type="东北虎"的Tiger节点插入age标签,且age的属性为10

match (t:Tiger) where t.type="东北虎" set t.age=10 return t
修改关系名称

将HAS_Phone修改为HAS_PHONE

match (a)-[h:HAS_Phone]->(b) 
create (a)-[h2:HAS_PHONE]->(b) 
set h2=h 
with h 
delete h
5.创建唯一索引

给Phone节点创建唯一索引number

CREATE CONSTRAINT ON (p:Phone) ASSERT p.number IS UNIQUE
  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值