`` Привет!У меня есть база данных людей, которые смотрят и любят фильмы.Всего 5 человек, у которых отношения с друзьями выглядят так: a> b> c> d> e.Я пытаюсь получить все фильмы, которые они смотрели и любили от человека до человека d.Я заставил его работать с этим запросом, но было много дубликатов:
MATCH(p:Person{name:'Joe'})-[:Friend*1..3]->(f)
MATCH(m:Movie)<-[:Watched]-(f)
MATCH(ml:Movie)<-[:Liked]-(f)
MATCH (mg:Movie)<-[:Watched]-(p)
MATCH (mgl:Movie)<-[:Liked]-(p)
RETURN m,ml,mg,mgl
Я пытался сузить его с помощью UNION, но я все еще вижу фильм, который видел только один человек, которому он понравился:
MATCH(p:Person{name:'Joe'})-[:Friend*..3]->(f)
MATCH(m:Movie)<-[:Watched]-(f)
RETURN m
UNION
MATCH(m:Movie)<-[:Liked]-(f)
RETURN m
UNION
MATCH (m:Movie)<-[:Watched]-(p)
RETURN m
UNION
MATCH (m:Movie)<-[:Liked]-(p)
RETURN m
Как я могу их удалить?