В основном, мой вопрос: как я могу суммировать свойства отношений, где есть связанные узлы, которые имеют свойства, равные значению A и значению B?Neo4j: свойства отношения отношения, где свойства узла равны. Значение A и значение B (пересечение)
Например:
У меня простой БД имеет следующее соотношение:
(site)-[:HAS_MEMBER]->(user)-[:POSTED]->(status)-[:TAGGED_WITH]->(tag)
на [: TAGGED_WITH] У меня есть свойство, называемое "TimeSpent". Я могу легко суммировать все время, затрачиваемое на определенный день и пользователя, используя следующий запрос:
MATCH (user)-[:POSTED]->(updates)-[r:TAGGED_WITH]->(tags)
WHERE user.name = "Josh Barker" AND updates.date = 20141120
RETURN tags.name, SUM(r.TimeSpent) as totalTimeSpent;
Это возвращает мне хороший стол с тегами и связанным с ними время, затрачиваемое на каждый. (т. е. #Meeting 4.5). Однако возникает вопрос, хочу ли я сделать некоторые расширенные поиски и сказать «Покажите мне все встречи для ProjectA» (т. Е. #Meeting #ProjectA). В основном, я ищу запрос, чтобы получить все отношения, в которых один статус имеет BOTH-теги (и только если он имеет оба). Тогда я могу SUM, чтобы подсчитать количество собраний, проведенных в #ProjectA.
Как это сделать?
Это не должно ограничиваться Джошем Баркером и определенной датой, ОП искал все такие должности. – FrobberOfBits
Справедливая игра, я обновлю. – JohnMark13