Neo4J Cypher根据值进行降序或升序排序
有没有办法根据单个查询中节点的属性在升序或降序之间进行选择 假设我有两种节点类型A和B。A有一个属性指定如何对B进行排序Neo4J Cypher根据值进行降序或升序排序,neo4j,cypher,Neo4j,Cypher,有没有办法根据单个查询中节点的属性在升序或降序之间进行选择 假设我有两种节点类型A和B。A有一个属性指定如何对B进行排序 MATCH (a:A)-[:has]->(b:B) WHERE a.id=1 ORDER BY b.name ----- (I'd like to order ascending if a.asc is true or descending if false) 您可以使用,它允许您将多个子查询组合到一个查询:“它将两个或多个查询的结果组合到一个结果集中,该结果集中包
MATCH (a:A)-[:has]->(b:B)
WHERE a.id=1
ORDER BY b.name ----- (I'd like to order ascending if a.asc is true or descending if false)
您可以使用,它允许您将多个子查询组合到一个查询:“它将两个或多个查询的结果组合到一个结果集中,该结果集中包含属于联合中所有查询的所有行。”
在这种情况下,根据a.prop
的值,我们执行升序或降序
MATCH (a:A)-[:has]->(b:B)
WHERE a.prop = "x"
RETURN b
ORDER BY b.name ASC
UNION
MATCH (a:A)-[:has]->(b:B)
WHERE a.prop <> "x"
RETURN b
ORDER BY b.name DESC
匹配(a:a)-[:has]->(b:b)
其中a.prop=“x”
返回b
按b.名称订购ASC
联合
匹配(a:a)-[:has]->(b:b)
其中a.prop“x”
返回b
按b.名称描述订购