从没有方括号的关系属性中获取结果?

Get results from relationships properties without square brackets?

在Cypher Neo4j Graph Database中,我想获取不带方括号的字符串形式的查询结果。 每次我从节点属性中检索信息时,我都会按预期获得字符串形式的结果,但是当我从关系中检索信息时,它显示在方括号内。

MATCH (m:Movie {title:"The Matrix"})<-[r:ACTED_IN]-() return r.roles;

结果:

[Agent Smith]
[Morpheus]
[Trinity]
[Neo]

得到方括号的原因是 ACTED_IN 关系的 roles 属性 是 list.

您可以使用 UNWIND 将列表(包括单元素列表)扩展为行:

MATCH (m:Movie {title:"The Matrix"})<-[r:ACTED_IN]-()
UNWIND r.roles AS roles
RETURN roles

如果我运行它在这个tutorial提供的矩阵数据集上,我得到:

╒═══════════╕
│roles      │
╞═══════════╡
│Agent Smith│
├───────────┤
│Emil       │
├───────────┤
│Trinity    │
├───────────┤
│Morpheus   │
├───────────┤
│Neo        │
└───────────┘