Привет, ребята! Я работаю с python py2neo, и у меня проблемы с возвратом «COMPRAN ...» и «COMPRAS STREETW ...», которые, как вы можете видеть, косвенно связаны с «Оскаром» двумя ближайшими к «Оскару» нотами. Моя идея состоит в том, чтобы вернуть список со всеми узлами, относящимися к Oscar таким же образом, как связаны «COMPRAN ...» и «COMPRAS STREETW ...».
Я пытаюсь использовать следующий код:
lista = []
for record in db.run("MATCH (a:user)-[:watched]->(b:video), (b)-[:hasTag]->(c:tag), (b)-[:hasGenre]->(d:genre), (e:video)-[:hasGenre]->(d:genre), (e:video)-[:hasTag]->(c:tag) WHERE a.name = $name RETURN e.name UNION MATCH (a:user)-[:watched]->(b:video), (b)-[:hasGenre]->(d:genre), (e:video)-[:hasGenre]->(d:genre) RETURN e.name UNION MATCH (a:user)-[:watched]->(b:video), (b)-[:hasGenre]->(d:genre), (e:video)-[:hasTag]->(c:tag) RETURN e.name", name=name, video=video, tag=tag, genre=genre):
lista.append(record["e.name"])
return lista
Моя проблема в том, что он возвращает только узел с именем «COMPRAS STREETW ...», и я считаю, что запрос должен возвращать этот узел и «COMPRAN ...», поскольку они связаны косвенно на «Оскар». Спасибо за чтение и надеюсь, что вы поможете мне заставить это работать.