如何解决找出客户购买了什么以及图形数据库中最受欢迎的产品
我正在使用 Neo4j。 数据库的架构是:
MATCH (customer{customerid})-[:made]->(purchased{invoiceno,invoicedate})-[:includes{quantity,invoiceamount}]->(product{stockcode,unitprice})
我已经知道如何获得最受欢迎的产品。
MATCH (a:customer)-[r1:made]->(b:purchase)-[r2:includes]->(c:product)
RETURN p.stockcode,count(*) AS quantity
ORDER BY quantity DESC
LIMIT 1
哪个给了我最受欢迎的产品。
╒══════════════╤═══════════════════╕
│"p.stockcode" │"quantity" │
╞══════════════╪═══════════════════╡
│"85123A" │77 │
└──────────────┴───────────────────┘
我如何知道客户与该产品一起购买了哪些产品。
解决方法
获取与您最热门的股票一起购买的产品的股票代码列表以及这些商品与最受欢迎的商品一起购买的次数的查询类似于:
MATCH (pr:product{stockcode:"85123A"})<-[includes]-(pu:purchase)-[includes]->(pr2:product)
RETURN pr2.stockcode,count (*) as quantity
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。