Neo4j密码查询顺序由收集

标签 neo4j cypher

在密码查询中,我有多个结果,我现在使用collect获取如何在密码中通过collect属性订购?

MATCH(u:User) 
WITH COLLECT({name:u.name,date:u.date}) AS userinfo 
RETURN userinfo

或者,如果有多个集合已合并
MATCH(u:User)-[r:CreatedBy]->(p:Project) 
WITH COLLECT({name:p.name,date:p.date}) AS info 
MATCH(i:Institue)-[owner:Owner]->(i:Institute) 
WITH COLLECT({instituteName:i.name,date:i.date}) AS instituteinfo,info 
WITH COLLECT(instituteinfo + info) AS alldata 
RETURN alldata

最佳答案

您只需要在收集用户节点之前通过您选择的属性对其进行排序。这样的东西..,

MATCH(u:User)
WITH u
ORDER BY u.name
WITH COLLECT({name:u.name,date:u.date}) AS userinfo 
RETURN userinfo

或者,如果您希望合并多个集合并生成一个有序集合,则可以将它们重新组合为此类...
MATCH(u:User)-[r:CreatedBy]->(p:Project) 
WITH COLLECT({name:p.name, date:p.date}) AS info 
MATCH(i:Institue)-[owner:Owner]->(i:Institute) 
WITH COLLECT({instituteName:i.name, date:i.date}) AS instituteinfo,info 
WITH instituteinfo + info AS alldata 
UNWIND alldata as node
WITH node
ORDER BY node.name
WITH COLLECT (DISTINCT node) as alldata
RETURN alldata

关于Neo4j密码查询顺序由收集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43118215/

相关文章:

java - Dijkstra 遍历关系性质

json - 密码查询JSON格式的结果

redis - 如何从RedisGraph删除/删除重复节点

neo4j - 一个密码查询中的多个 CREATE INDEX ON

python - Py2neo (V4) - CypherSyntaxError : Variable `$x` not defined

graph - 在两个顶点之间找到边的正确方法是什么?

java - neo4j条件关系

java - org.neo4j.ogm.exception.core.MappingException : More than one class has simple name

macos - 使用 Mac : which path to use for my file? 在 Neo4J 上导入 csv 文件

java - Neo4j cypher 跟踪删除节点/关系