Рассматривая пример из мастерской фильмов GrandStack https://github.com/grand-stack/grand-stack-movies-workshop/blob/master/neo4j-database/answers.md
Здесь предлагается запрос рекомендуемых фильмов
MATCH (m:Movie) WHERE m.movieId = $movieId
MATCH (m)-[:IN_GENRE]->(g:Genre)<-[:IN_GENRE]-(movie:Movie)
WITH m, movie, COUNT(*) AS genreOverlap
MATCH (m)<-[:RATED]-(:User)-[:RATED]->(movie:Movie)
WITH movie,genreOverlap, COUNT(*) AS userRatedScore
RETURN movie ORDER BY (0.9 * genreOverlap) + (0.1 * userRatedScore) DESC LIMIT 3
Не будет ли этот запрос смещен в том смысле, что он будет рассчитывать только userRatedScoreдля фильмов, которые имеют хотя бы один жанр в фильме с Id $ movieId?
Как будет выглядеть переписанный запрос, который вычисляет обе оценки независимо, означая, что он все равно будет рассчитывать userRatedScore для данного фильма, даже если он не разделяет жанры с фильмом с Id $ movieId