Neo4j / CYPHER:如何有效地从节点查询某些属性,其关系和目标节点?

安德烈亚斯·穆勒(Andreas Mueller)

我想查询一组节点的属性,其关系和具有某些属性的目标节点的子集(来自Java和CYPHER,通过REST)。我的想法如下:

MATCH a WHERE id(a) IN {ids}
OPTIONAL MATCH (a)-[r]->(b)
RETURN id(a), a.name, a.attr1, r.attr2, id(b), b.name

现在,我对每个关系都有一个“行”,但是它多次包含每个节点“ a”的数据。

是否有更好的方法进行这样的查询,以使节点“ a”的属性仅传输一次?一种想法是进行两个单独的查询,但是如果WHERE条件稍微复杂一点,则可以执行两次。

弗兰蒂谢克·哈特曼

使用收集功能。

http://neo4j.com/docs/stable/query-aggregation.html#aggregation-collect

MATCH a WHERE id(a) IN {ids}
OPTIONAL MATCH (a)-[r]->(b)
RETURN id(a), a.name, a.attr1, collect([r.attr2, id(b), b.name])

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Neo4j Lucene查询关系和节点属性

来自分类Dev

Neo4j - Cypher 节点和关系

来自分类Dev

Neo4j gem-销毁关联节点和关系的有效方法

来自分类Dev

查询Neo4j

来自分类Dev

如何使用 Cypher 制作 Neo4J 中所有可能关系和节点的“蓝图”?

来自分类Dev

Neo4j标签与节点属性

来自分类Dev

Neo4J和Cypher查询

来自分类Dev

如何使用neo4j有效查询深度链接的节点

来自分类Dev

什么Cypher查询可检索Neo4J中某些节点之间的关系?

来自分类Dev

Neo4j 密码查询:具有指定节点和关系属性的 AllShortestPaths

来自分类Dev

Neo4j如何在列表中的Neo4j中创建节点的关系?

来自分类Dev

neo4j:如何构造有效的查询?

来自分类Dev

neo4j如何缓存所有节点和与RAM的关系以导入查询性能

来自分类Dev

neo4j cypher:查询结果中的“堆叠”节点

来自分类Dev

java neo4j cypher查询来匹配节点

来自分类Dev

neo4j查询以排除与具有某些属性的节点相关的节点

来自分类Dev

Neo4j 更高效的 Cypher 查询,用于查找具有关系的连接节点

来自分类Dev

Neo4j Cypher 更新节点动态属性

来自分类Dev

Neo4J / Cypher查询协助

来自分类Dev

Neo4j Cypher递归查询

来自分类Dev

Cypher Neo4j 查询优化

来自分类Dev

优化Cypher查询Neo4j

来自分类Dev

Neo4j Cypher查询错误

来自分类Dev

合并Neo4j中的节点

来自分类Dev

迭代neo4j中的节点

来自分类Dev

Neo4j节点创建速度

来自分类Dev

Neo4J:避免重复节点

来自分类Dev

Neo4j节点属性数组创建关系

来自分类Dev

Neo4j - 获取节点集合以及关系属性