Neo4j 第十一篇:Cypher函数

Cypher函数是对图进行查询和操作的重要工具。 

一,谓词函数

谓词函数返回true或者false,主要用于检查是否存在或满足特定的条件。

1,Exists

如果指定的模式存在于图中,或者特定的属性存在于节点、关系或Map中,那么函数返回True

例如,节点具有name属性,并check图中是否存在特定的模式:

MATCH (n)
WHERE exists(n.name)
RETURN n.name AS name, exists((n)-[:MARRIED]->()) AS is_married

2,检查集合元素

all()表示所有的元素都满足条件,any()表示至少一个元素满足条件,none()函数表示没有一个元素满足条件,single()表示只有一个元素满足条件

例如,ALL谓词表示,在路径中,所有节点都必须具有age属性,并且age属性值都必须大于30:

MATCH p =(a)-[*1..3]->(b)
WHERE a.name = 'Alice' AND b.name = 'Daniel' AND ALL (x IN nodes(p) WHERE x.age > 30)
RETURN p

ANY谓词表示,节点的array属性中至少有一个元素值是one:

MATCH (a)
WHERE a.name = 'Eskil' AND ANY (x IN a.array WHERE x = 'one')
RETURN a.name, a.array

NONE谓词表示,在路径中,没有节点的age属性等于25

MATCH p =(n)-[*1..3]->(b)
WHERE n.name = '
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值