У меня есть определенный c ключ свойства в наборе данных в neo4j. Как найти все отдельные метки для указанного ключа свойства c? - PullRequest
0 голосов
/ 06 апреля 2020

Я знаю, что приведенный ниже код дает мне список моих основных узлов в наборе данных и их свойства;

MATCH(n)
WITH LABELS(n) AS Main_Nodes, KEYS(n) AS keys
UNWIND labels AS label
UNWIND keys AS key
RETURN DISTINCT label, COLLECT(DISTINCT key) AS Properties
ORDER BY label

1 Ответ

1 голос
/ 06 апреля 2020

Обратите внимание, что это довольно дорогие запросы для всего графа, но чтобы найти отличительные метки узлов с указанным ключом свойства c, вы можете использовать следующее:

MATCH (n)
WHERE exists(n.myKey)
UNWIND labels(n) as label
RETURN collect(DISTINCT label) as labels

EDIT

Что касается поиска всех различных значений ключа в базе данных, это также будет дорогостоящим запросом для всего графа, но вы можете сделать это с помощью такого запроса:

MATCH (n)
WHERE exists(n.myKey)
RETURN DISTINCT n.myKey as values
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...