我有以下标签: -的Neo4j - 用户的搜索历史记录基于推荐
- 标签
- 类型
- 演员
- 主任
- 电影
- 用户
- UsersSerachHistory
我的应用程序用户拥有搜索栏,他们可以在其中键入和搜索任何内容,我在一段时间内将用户搜索的内容存储为将来的推荐内容。基于用户搜索历史记录的推荐查询是什么?我是否需要创建搜索历史关系?通过一些教程建议走后,我一点能够写出下面的查询 -
MATCH (m:Movie)<-[:LIKE]-(p:Person {personId : 1})
OPTIONAL MATCH (t:Tag)
WITH collect(distinct t.tagName) as c1
OPTIONAL MATCH (g:Genre)
WITH collect(distinct g.name) + c1 as c2
OPTIONAL MATCH (l:Language)
WITH collect(distinct l.languageName) + c2 as c3
RETURN c3
这是不是一个完整的查询,但一个粗略的想法,我不知道是不是正确的方式?任何人都可以帮助我实现它吗?非常感谢!!
感谢您的回复,但我已经有了LIKE,RATING和VIEW的推荐,而且他们工作的很好,但我希望基于搜索历史的推荐与youtube回复系统非常相似。用户搜索关键字可以是电影标题,演员名称,标签等。例如,如果它是一个标签名称,那么我想要展示那些具有相同标签的电影。 –
已更新我的回答 –
我已根据您的指示设置搜索记录,但我是Neo4j中的新手,不知道推荐的查询是什么。你能帮忙吗? –