Итак, в настоящее время я пишу запрос Cypher, в котором я хочу получить все записи в базе данных и их отношения, чтобы импортировать их в Cytoscape для дальнейшего анализа.
Я хочу объединить два типа отношений в одинпеременной, используйте операцию WHERE для них и верните результаты. Допустим, я хочу получить список интересных фильмов, основываясь на том, сколько человек потратил (например, на коллекционное издание) или действительно ли ему удалось посмотреть фильм.
Прямо сейчас мой запрос выглядит следующим образом: на основе этого примера :
MATCH (p:Person)-[rel:`watched`|`bought`]->(c:Movie)
WHERE
(rel.watch_min >= 50) or (rel.bought_price > 10)
RETURN p, rel, c
Теперь в браузере Neo4j это работает. Но вывод rel
имеет только свойства отношения из отношения watched
, а не объединенного.
Как должен выглядеть запрос, чтобы rel
содержал оба свойства, начиная с watched
а bought
?
В основном я хочу написать следующее:
MATCH (p:Person)-[r1:`watched`|r2:`bought`]->(c:Movie)
WHERE
(rl.watch_min >= 50) or (r2.bought_price > 10)
RETURN p, r1, r2, c
Но, к сожалению, это неверный синтаксис.