Итак, если вы хотите получить все узлы родителя, используйте следующий запрос:
Match (n)-[r]-() OPTIONAL MATCH (parent:ParentNodeType)<-[r1*]-(child) return n,r,COLLECT(parent) as parent
. Как вы упомянули в комментарии, вы ищете родителя 3-го уровня, чтобы вы могли дать номер уровня и то, что хотите получить , Пожалуйста, смотрите ниже запрос для уточнения c level
Match (n)-[r]-() OPTIONAL MATCH (parent:ParentNodeType)<-[r1*3]-(child) return n,r,COLLECT(parent) as parent
, и, насколько я понимаю, вам не нужно писать этот длинный запрос. проверьте ниже запрос, если вы получаете требуемый результат
MATCH (p)<-[r*3]-(c) return p,r,c