List & Pattern comprehension

2022-08-26  本文已影响0人  alue

List comprehension 是 Cypher 的一种语法结构,它能够从已有列表中按照一定规则生成新的列表。

RETURN [x IN range(0,10) WHERE x % 2 = 0 | x^3 ] AS result

上述语句的意思是对列表先过滤,再映射,结果为

[0.0,8.0,64.0,216.0,512.0,1000.0]

同样,Pattern comprehension也是Cypher的语法结构,能够从模式匹配中生成新的列表。
以下图为例:


图里有基努里维斯参演的各种电影,我们想获得黑客帝国系列的上映年份,如何能够用最精简的Cypher语句查询呢?

MATCH (a:Person {name: 'Keanu Reeves'})
RETURN [(a)-->(b:Movie) WHERE b.title CONTAINS 'Matrix' | b.released] AS years

上述语句就能得到years如下:

[2021,2003,2003,1999]

这种 comprehension 语法在 python 脚本中也很常见,简洁且强大。

上一篇下一篇

猜你喜欢

热点阅读