Я использую neo4j 3.5.2 Desktop с Nodejs.Я пытаюсь обновить свойства записи пользователя и добавить / удалить связь с другими узлами в том же запросе: мой запрос выглядит следующим образом:
MATCH (user:Dealer {email: $paramObj.email})
SET user += apoc.map.clean($paramObj, ["email","vehicles"],[])
WITH user, $paramObj.vehicles AS vehicles
UNWIND vehicles AS vehicle
MATCH(v:Vehicles {name:vehicle})
MERGE (user)-[r:SUPPLY_PARTS_FOR]->(v)
ON CREATE SET r.since = timestamp()
WITH vehicles,user
MATCH (user)-[r:SUPPLY_PARTS_FOR]->(v)
WHERE NOT apoc.coll.contains(vehicles,v.name)
DELETE r
WITH $paramObj.email AS dealeremail
MATCH (user:Dealer {email: dealeremail})
RETURN user
У меня возникла проблема с возвратом пустого массива 'user'когда запрос, связанный с удалением отношения транспортного средства (r), приводит к появлению нулевых строк.
Как сохранить исходный результат «пользователя» или сохранить адрес электронной почты, чтобы повторить запрос.Я пытался использовать WITH $ paramObj.email AS качестве дилера электронной почты, но, похоже, я не могу переслать дилеру электронную почту ... Хотя я мог.