Похоже, вы хотите сопоставить модель и марку автомобиля, упорядоченную по возрастанию модельного года, и создать отношения между этими узлами.
Мы можем использовать Процедуры APOC в качестве ярлыка для создания связанного списка через упорядоченные и собранные узлы, вам нужно установить его (с соответствующей версией, соответствующей вашей версии Neo4j), чтобы принять Преимущество этой возможности, так как подход чистого шифра довольно некрасив.
Запрос будет выглядеть примерно так:
MATCH (n:car_detail)
WITH n
ORDER BY n.model_year
WITH collect(n) as cars, n.model as model, n.maker_name as maker
WHERE size(cars) > 1
CALL apoc.nodes.link(cars, 'CONTINUED')
RETURN cars
Ключевым моментом здесь является то, что после того, как мы упорядочим узлы, мы агрегируем узлы по модели и производителю, которые действуют как ваш ключ группировки (при агрегировании переменные неагрегирования становятся ключом группировки для агрегации). Это означает, что ваши заказанные автомобили будут сгруппированы по маркам и моделям, поэтому осталось только использовать APOC для создания отношений, связывающих узлы в списке.