Neo4j: показать только одно отношение для каждой пары узлов - PullRequest
0 голосов
/ 08 мая 2018

У меня есть графовая база данных с отношением один ко многим. Существует один центральный узел, который имеет одно или несколько отношений одного и того же типа (но с разными свойствами, но в одном направлении, т. Е. От центрального узла) ко всем остальным узлам.

Когда я запрашиваю все узлы в браузере Neo4j, визуализация показывает множественные отношения между парами узлов. Как я могу ограничить это только одним отношением.

Я нашел этот связанный вопрос, но он не удовлетворяет моей цели. Следующий запрос по-прежнему показывает несколько отношений

MATCH p=()-[r:AT_THE_SAME_TIME_AS]->() RETURN p, collect(r)[0] AS r LIMIT 25

Итак, я попробовал следующее, но тогда это не показывает отношения, а только узлы:

MATCH p=()-[r:AT_THE_SAME_TIME_AS]->(s) RETURN s, collect(r)[0] AS r LIMIT 25

Как это сделать?

1 Ответ

0 голосов
/ 08 мая 2018

Итак, вот небольшой примерный набор данных (поправьте меня, если это не правильно):

CREATE (t1:Test {id: 1})
CREATE (t2:Test {id: 2})
CREATE (t1)-[:AT_THE_SAME_TIME_AS {counter: 1}]->(t2)
CREATE (t1)-[:AT_THE_SAME_TIME_AS {counter: 2}]->(t2);

А вот запрос, который получает только первые отношения между ними:

MATCH (t1:Test {id: 1})-[r:AT_THE_SAME_TIME_AS]->(t2:Test) RETURN t1.id, collect(r)[0] as r;

Надеюсь, это поможет!

С уважением, Том

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...