как создать несколько отношений в одном выражении шифра - PullRequest
0 голосов
/ 05 ноября 2018

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

create (_1)-[:`typ`]->(:`x` {`name`:"Mark"})
create (_1)-[:`typ`]->(:`y` {`name`:"Jane"})
create (_1)-[:`typ`]->(:`z` {`name`:"John"})
...

Я хотел бы иметь сокращенный способ написания этих утверждений, например следующую попытку?

create (_1)-[:`typ`]->[(:`x` {`name`:"Mark"}),
                       (:`y` {`name`:"Jane"}),
                       (:`z` {`name`:"John"})]

Есть идеи?

Заранее спасибо.

Paolo

1 Ответ

0 голосов
/ 05 ноября 2018

Вы можете сделать это быстрым и простым способом по этому шаблону:

{batch: [
{from:"alice@example.com",to:"bob@example.com",properties:{since:2012}},
{from:"alice@example.com",to:"charlie@example.com",properties:{since:2016}}]}
UNWIND {batch} as row

MATCH (from:Label {row.from})
MATCH (to:Label {row.to})
CREATE/MERGE (from)-[rel:KNOWS]->(to)
(ON CREATE) SET rel += row.properties

Принято с благодарностью от 5 советов и рекомендаций для быстрых пакетных обновлений графических структур с Neo4j и Cypher от @ MichaelHunger.

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