|| apoc.agg.first - APOC 核心文档 - Neo4j 文档

apoc.agg.first

详情

语法

apoc.agg.first(value)

描述

返回给定集合的第一个值。

参数

名称

类型

描述

value

任意

要聚合的值。

返回

任意

使用示例

本节中的示例基于以下示例图

CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})
CREATE (TomH:Person {name:'Tom Hanks', born:1956})

CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'})
CREATE (TheMatrixReloaded:Movie {title:'The Matrix Reloaded', released:2003, tagline:'Free your mind'})
CREATE (TheMatrixRevolutions:Movie {title:'The Matrix Revolutions', released:2003, tagline:'Everything that has a beginning has an end'})
CREATE (YouveGotMail:Movie {title:"You've Got Mail", released:1998, tagline:'At odds in life... in love on-line.'})
CREATE (SleeplessInSeattle:Movie {title:'Sleepless in Seattle', released:1993, tagline:'What if someone you never met, someone you never saw, someone you never knew was the only someone for you?'})

CREATE (Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrix)
CREATE (Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrixReloaded)
CREATE (Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrixRevolutions)

CREATE (TomH)-[:ACTED_IN {roles:['Joe Fox']}]->(YouveGotMail)
CREATE (TomH)-[:ACTED_IN {roles:['Sam Baldwin']}]->(SleeplessInSeattle);

以下示例使用 APOC 和 Cypher 返回上述演员参演的最早电影

apoc.agg.first
MATCH (p:Person)-[:ACTED_IN]->(movie)
WITH p, movie
ORDER BY p, movie.released
RETURN p.name AS person, apoc.agg.first(movie) AS earliestMovie;
使用 Cypher 的 CALL 子查询
MATCH (p:Person)
CALL (p) {
    MATCH (p)-[:ACTED_IN]->(movie)
    RETURN movie ORDER BY movie.released ASC LIMIT 1
}
RETURN p.name AS person, movie AS earliestMovie ORDER BY p
结果
person earliestMovie

"汤姆·汉克斯"

(:Movie {tagline: "如果有人你从未见过,有人你从未谋面,有人你从未了解,却是你唯一的命中注定呢?", title: "西雅图不眠夜", released: 1993})

"基努·里维斯"

(:Movie {tagline: "欢迎来到真实世界", title: "黑客帝国", released: 1999})

© . This site is unofficial and not affiliated with Neo4j, Inc.