Поэтому я пытаюсь создать набор запросов, которые будут выполнять следующие действия при наличии списка узлов:
Если существует узел, имеющий отношения ко всем узлам в списке, вернуть этот узел
Если существует , а не такой узел, создайте узел и связи с каждым узлом в списке
Моя первая попытка была с этими двумя запросами:
MATCH (u:User) WHERE u.id IN {userIds}
WITH collect(u) as users
MATCH (conversation:Conversation)
WHERE ALL(u in users WHERE (u)-->(conversation))
RETURN conversation
MATCH (user:User) WHERE user.id IN {userIds}
MERGE (conversation:Conversation {id: {conversationId}})
WITH conversation
MERGE (user)-[:In]->(conversation)
RETURN conversation
Но в результате создается один узел диалога для каждого пользовательского узла, и мне нужен один узел диалога, который подключен к всем пользовательским узлам.
Как мне этого добиться?