Я пытаюсь выполнить следующую задачу в запросе cypher, но я не получаю правильных результатов. В других вопросах stackoverflow обсуждаются лимиты или собираются, но я не думаю, что этого достаточно для выполнения следующей задачи.return top n результатов для каждого запроса в Neo4j
Задача: У меня есть (p: Product) узлы и между двумя узлами продукта есть связь, называемая «BOUGHT_TOGETHER». То есть
(p:Product)-[b:BOUGHT_TOGETHER]-(q:Product)
И отношение b имеет свойство «размер», которое содержит некоторое число. Я хочу вернуть первые 3 результата для каждого отношения продукта, которое упорядочивается по размеру. Например, результат запроса должен выглядеть следующим образом.
+------------------------+
| p.id | q.id | b.size |
+------------------------+
1 2 10
1 3 8
1 5 7
2 21 34
2 17 20
2 35 15
3 5 49
3 333 30
3 65 5
. . .
. . .
. . .
Может ли кто-нибудь показать мне, как написать запрос cypher, чтобы достичь желаемых результатов? Спасибо!
Вышеупомянутый запрос вернет всего 3 строки. Я хочу вернуть 3 строки для каждого узла. – user4279562