Создать отношения из таблицы поиска в Ne04j и Cypher - PullRequest
0 голосов
/ 29 января 2020

Новичок в Neo4j и Cypher и проблемы с отношениями. Возможно, мои данные структурированы неправильно, но я хотел бы создать отношения между узлами на основе таблицы поиска. Я сделал много поисков, но не могу найти то, что будет работать с моей ситуацией, что, возможно, основано на моем минимальном опыте работы с Neo4j.

У меня есть три таблицы (обрисованы в общих чертах ниже), первая таблица содержит цели, вторая - названия компаний, а третья - это взаимосвязь между целями и компанией. Например, компания AB C хочет быть зеленой (компания) - [WANT_TO_BE] -> (цель)

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

Таблица целей

goalName
efficient
green
reduce fuel

Стол компании

companyName
ABC
EFG
XYZ

Таблица goal2comp

goalName, companyName
efficient, ABC
efficient, XYZ
green, ABC
green, EFG
reduce fuel, XYZ
reduce fuel, EFG

1 Ответ

1 голос
/ 29 января 2020

Это вполне выполнимо. Вот пример:

MERGE (abc:Company {name: "ABC"})
MERGE (efg:Company {name: "EFG"})
MERGE (efficient:Goal {name: "efficient"})
MERGE (green:Goal {name: "green"})
MERGE (abc)-[:WANT_TO_BE]->(efficient)
MERGE (efg)-[:WANT_TO_BE]->(green)

ОБНОВЛЕНИЕ: Если у вас есть CSV-файлы, которые вы хотите импортировать в neo4j, вы можете найти здесь все, что вам нужно: https://neo4j.com/developer/guide-import-csv/ https://neo4j.com/docs/cypher-manual/current/clauses/load-csv/

...