2
我正在neo4j中进行一个简单的演示,我想根据订单使用推荐以及如何购买。我在这里创建了一个图表:http://console.neo4j.org/?id=jvqr95。如何在Neo4j中简单推荐
基本上我有很多关系,如:
(o:Order)-[:INCLUDES]->(p:Product)
一个订单可以有多个产品。
给出了具体的产品ID,我想寻找其他的产品,在盛装产品与给定的产品ID的订单,我想通过订单的产品在数量来订购吧。
我试过以下内容:
MATCH (p:Product)--(o)-[:INCLUDES]->(p2:Product)--(o2)
WHERE p.name = "chocolate"
RETURN p2, COUNT(DISTINCT o2)
但这并没有给我我想要的结果。对于查询我有望获得chips
回来计数2,但我只得到1
计数而对于follwing查询:
MATCH (p:Product)--(o)-[:INCLUDES]->(p2:Product)--(o2)
WHERE p.name = "chips"
RETURN p2, COUNT(DISTINCT o2)
我期望能获得chocolate
和ball
放回原处每个人都有1的计数,但我没有得到任何回报。我错过了什么?
真棒!我使用'p.name =“chips”'的原因是因为后来我想做同样的查询但是有多个产品。也就是说,我已经把产品x,y,z按顺序排列,其他人买了什么,买了这些产品。所以我正在考虑使用类似于:'WHERE p.name IN [“x”,“y”,“z”] AND NOT(p2.name IN [“x”,“y”,“z”]) '。无论哪种方式,非常感谢。 – 2014-10-29 08:08:10
听起来不错。我只是使用速记版。 :) – 2014-10-29 17:48:57