Как я могу быстро подсчитать количество «сообщений», сделанных одним человеком, и сгруппировать их по человеку в запросе cypher?Как группировать и подсчитывать отношения в cypher neo4j
В основном у меня есть узлы метки сообщений и пользователи, которые разместили (Относят) эти сообщения. Я хочу подсчитать количество сообщений, отправленных каждым пользователем.
Его групповые сообщения по идентификатору отправителя и подсчет количества сообщений на пользователя.
Вот то, что я до сих пор ...
START n=node(*) MATCH (u:User)-[r:Posted]->(m:Message)
RETURN u, r, count(r)
ORDER BY count(r)
LIMIT 10
У меня возникли проблемы с пониманием. Является ли 'n' автором и' m' почтой? Если отношение, 'r', является': POSTED', зачем вам нужно приравнивать 'n.id = m.sender_id'? Если у вас есть что-то в этом роде ... '(a: Author) - [r: POSTED] -> (m: Message)'? –
извините неправильную копию пасты ... Я отредактирую ее. Хорошо, я исправил это. – Astronaut
не использовать 'start n = node (*)' !! Особенно а не с несвязанным узлом, он создаст огромный декартовой продукт для каждого узла вашего графика. –