Я пытаюсь использовать два списка для создания узлов / отношений в шифре. Используя решение для этого связанного вопроса , мое текущее решение:
MERGE (t:Test)
WITH t
UNWIND ["a","b"] AS name // first list
MERGE (t)-[:FOO_REL]->(a:Foo { name: name })
WITH DISTINCT t
UNWIND [100,200] AS id // second list
MERGE (t)-[:BAR_REL]->(b:Bar { id: id })
Это работает, если в обоих списках есть записи. Однако, если первый список пуст, то второй список никогда не разматывается (и не создаются :Bar
узлы).
Как мне организовать цепочку UNWIND
s, чтобы я мог создавать узлы / отношения из двух отдельных списков в одном запросе?