Я пытался вернуть наиболее часто встречающиеся пути от 2 до 5 в Neo4j по количеству путей, но я боролся с тем, чтобы возвращать пути только с разными именами событий.
То, что я пытался достичь, например, если самый распространенный путь
веб-визит-> веб-визит-> веб-визит со счетом 3000, и второй по распространенности путь
веб-визит-> веб-визит со счетом 2000
тогда то, что я бы увидел, это просто
посещение веб-сайта - 5000, так как мне важны только отдельные типы событий, а не повторяющиеся цепочки.
В равной степени, если самый частый путь
веб-визит-> оплата счетов-> веб-визит-> веб-визит со счетом 3000
То, что я хотел бы видеть
веб-визит-> оплата счетов-> веб-визит -3000
MATCH path = (:event)<-[:PREV*2..5]-(:event)
UNWIND nodes(path) as n
RETURN collect(distinct n) as nodes,count(path)
Запрос выполняется целую вечность, а затем и время ожидания, поэтому я не получаю никаких результатов.