Вот пример того, как соединить каждый узел Question
и Answer
с отношением HAS_ANSWER
:
LOAD CSV WITH HEADERS FROM "file:///Test.csv" AS row
MERGE (q:Question {text: row.Question})
MERGE (a:Answer {text: row.Answer})
MERGE (q)-[:HAS_ANSWER]->(a)
[ОБНОВЛЕНИЕ 1]
И вотПример получения Answer
для определенного Question
:
MATCH (q:Question {text: "What is the square root of 4?"})-[:HAS_ANSWER]->(a:Answer)
RETURN q, a;
Для более быстрых результатов вы должны создать index для :Question(text)
.
[ОБНОВЛЕНИЕ 2] Чтобы получить список всех вопросов с одинаковым ответом:
MATCH (q:Question)-[:HAS_ANSWER]->(a:Answer {text: "The square roots of 4 are 2 and -2."})
RETURN a, COLLECT(q) AS questions;
Для более быстрых результатов вы должны создать index для :Answer(text)
.