gpt4 book ai didi

neo4j - 对于以双向关系连接的节点,密码返回两次

转载 作者:行者123 更新时间:2023-12-04 23:05:05 25 4
gpt4 key购买 nike

我有 2 个节点:(A)、(B),由 [:FRIEND] 连接

当我运行以下命令时,

start n = node(*) match (n)-[r:FRIEND]-(b) return n.name, b.name;

它返回 2 行:
A、B 和 B、A。

我想知道,如何让它只返回一条记录,因为关系是双向的,A -[:FRIEND]-B 和 B-[:FRIEND]-A 被认为是相同的结果。

谢谢。

最佳答案

一个技巧是添加一个 where在 ID 上,因此您也可以按照一致的顺序获取它们:

start n = node(*) 
match (n)-[r:FRIEND]-(b)
where id(n) < id(b)
return n.name, b.name;

http://console.neo4j.org/r/1ry0ga

如果它们之间有多种关系(例如,在两个方向上),则可以添加不同的修饰符以获得相同的结果:
start n = node(*) 
match (n)-[r:FRIEND]-(b)
where id(n) < id(b)
return distinct n.name, b.name;

关于neo4j - 对于以双向关系连接的节点,密码返回两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14410127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com