Neo4j - 数组属性的最小值

Neo4j - minimum value from array properties

如何使用 cypher 获取具有属性的数组的最小值?

MATCH (n)-[r]->(m) RETURN n,m,min(r.timestamps)

以上查询无效。

r 有一个带有时间戳的数组 r.timestamps 如何获取时间戳的最小值?

我找到了这样的答案,但是看起来很难看

MATCH 
    (h1)-[r]-(h2) 
RETURN h1, h2, 
    reduce(minTimestamp = 999999999999999999, t IN r.timestamps | CASE WHEN minTimestamp < t THEN minTimestamp ELSE t END)

您可以使用 unwind:

MATCH (n)-[r]->(m)
UNWIND r.timestamps as timestampts
RETURN n, m, min(timestampts)