【发布时间】:2015-04-02 19:07:45
【问题描述】:
匹配 (a)-[:PRODUCED]->(b) 返回一个
- 它显示 8 个节点。没关系。 但是当我要返回它的属性时,它会显示重复的值。
匹配 (a)-[:PRODUCED]->(b) 返回 a.name
- 它返回 15 行。据我说,(a)与(b)有15次相关,这就是为什么它返回重复记录,但我不需要那个。我只需要唯一的 8 行。
我将如何做到这一点,或者确切的密码查询是什么?
【问题讨论】:
匹配 (a)-[:PRODUCED]->(b) 返回一个
匹配 (a)-[:PRODUCED]->(b) 返回 a.name
我将如何做到这一点,或者确切的密码查询是什么?
【问题讨论】:
我认为你有几个选择:
MATCH (a)-[:PRODUCED]->(b) RETURN DISTINCT a.name
或
MATCH (a)-[:PRODUCED]->(b) WITH a RETURN a.name
前者返回不同的名称,如果您有多个具有相同名称的节点并且您希望返回该结果,这并不好。后者应该传递一组不同的节点,然后返回它们的名称。如果这不起作用,您可以尝试WITH DISTINCT a
【讨论】:
RETURN 或 WITH 将允许您将 DISTINCT 放在子句中的任何表达式之前,因此如果您想传递 id、name 或 @ 的不同值987654329@你可以做WITH/RETURN DISTINCT property