Я использую Neo4j CE 3.1.1, и у меня есть отношения ПИСАНИЯ между авторами и книгами. Я хочу найти N (например, N = 10, например) книг с наибольшим числом авторов. После несколько примеров, которые я нашел, я пришел с запросом:Neo4j: запрос, чтобы найти узлы с наибольшими отношениями и их подключенные узлы
MATCH (a)-[r:WRITES]->(b)
RETURN r,
COUNT(r) ORDER BY COUNT(r) DESC LIMIT 10
Когда я выполнить этот запрос в браузере Neo4j я получаю 10 книг, но они не похожи на те, написанных большинством авторов, так как они показывают только несколько отношений WRITES с авторами. Если изменить запрос к
MATCH (a)-[r:WRITES]->(b)
RETURN b,
COUNT(r) ORDER BY COUNT(r) DESC LIMIT 10
Тогда я получаю 10 книг с большинством авторов, но я не вижу их отношение к авторам. Для этого я должен написать дополнительные запросы прямо указав имя книги, которую я нашел в предыдущем запросе:
MATCH()-[r:WRITES]->(b)
WHERE b.title="Title of a book with many authors"
RETURN r
Что я делаю неправильно? Почему первый запрос работает не так, как ожидалось?
Большое спасибо! – st1led
Несомненно! Хотя вы можете сначала профилировать запросы, первый, который я дал, вероятно, не будет таким же результативным, поскольку он собирает тонны на более крупном графике. – InverseFalcon