В простом шаблоне (фиксированная длина 1) переменная r
равна только одному отношению , но в случае шаблонов переменной длины переменная r
представляет собой список отношений .
Ваш первый запрос правильный, но во втором запросе вы пытаетесь получить свойство id из List
вместо того, чтобы получать его от определенного relationship
.
Вы можете изменить свой запрос, чтобы получить свойства из списка следующим образом:
MATCH ()-[r:RELATED_TO*2]->()
UNWIND r as rel
RETURN COLLECT(DISTINCT id(rel))
Над шаблоном (Связывание связей со списком в шаблоне переменной длины устарело) устарело и будет удалено в будущих версиях.
Рекомендуемый способ - привязать весь путь к переменной, а затем извлечь отношения:
MATCH path=()-[:RELATED_TO*2]->()
UNWIND relationships(path) AS rel
RETURN COLLECT(DISTINCT id(rel))