Как вставить список одинаковых свойств, но разных значений в отношение в порядке возрастания в neo4j?

#neo4j

#neo4j

Вопрос:

У меня есть 2 узла, person и job. Просматривается связь между ними. Я хочу сохранить все временные метки всякий раз, когда пользователь просматривал задание в списке в порядке возрастания, и добавить этот список к моему отношению.

Комментарии:

1. Не могли бы вы описать модель данных более подробно?

Ответ №1:

Следующий запрос Cypher использует предложение MERGE для создания VIEWED отношения, если оно еще не существует. ON CREATE Предложение будет инициализировать timestamps список, если MERGE предложение должно было создать связь, тогда ON MATCH как предложение будет добавляться к timestamps списку, если связь уже существует.

 MATCH (p:Person {id: 123}), (j:Job {id: 987})
MERGE (p)-[v:VIEWED]->(j)
ON CREATE SET v.timestamps = [datetime()]
ON MATCH  SET v.timestamps = v.timestamps   datetime()