密码查询:返回特定用户评分的食谱,包含特定成分,按结果中重复的食谱数量排序

问题描述

我正在编写以下密码查询以返回具有以下条件的一些食谱:

  1. 用户 2203,我可以根据 sim_score 找到相似的用户
  2. 一旦定义了相似的用户,我需要获得他们评分的食谱列表。
  3. 2. 中的食谱应包括以下所有成分 ['姜黄'、'盐']。
  4. 然后,食谱应该按照它在 1 中出现的次数排序。(例如,用户 B 评价的食谱 1,2,3 和用户 C 评价的食谱 2,4,5 => 应该首先订购食谱 2 ).

我该怎么做?

query = """
    MATCH(u:USER {user:"2203"})-[s:SIMILARITY]->(u2:USER)-[:RATED]->(r:RECIPE)
    WITH count(r) as n_recipe
    WITH ["turmeric","salt"] as ingredients
    WHERE exists((r.recipe)-[:CONTAINS]->(:INGREDIENT {name:ingredients}))
    return r.recipe
    ORDER BY n_recipe
    LIMIT 10
    """
graph.run(query)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)