我编写了以下Cypher查询:
MATCH (c:Customers {name:'Paul Pogba'})-[:ORDERED]->(o:Orders)-[:BOUGHT]->(i:Items) Return c, i.kit, count(i)
我得到一个像这样的表作为我的输出。
╒═════════════════════╤═════════════╤══════════╕
│"c" │"i.kit" │"count(i)"│
╞═════════════════════╪═════════════╪══════════╡
│{"name":"Paul Pogba"}│"bumper" │1 │
├─────────────────────┼─────────────┼──────────┤
│{"name":"Paul Pogba"}│"wing mirror"│1 │
├─────────────────────┼─────────────┼──────────┤
│{"name":"Paul Pogba"}│"bonnet" │1 │
├─────────────────────┼─────────────┼──────────┤
│{"name":"Paul Pogba"}│"boot" │2 │
├─────────────────────┼─────────────┼──────────┤
│{"name":"Paul Pogba"}│"wheel" │1 │
├─────────────────────┼─────────────┼──────────┤
│{"name":"Paul Pogba"}│"windscreen" │1 │
├─────────────────────┼─────────────┼──────────┤
│{"name":"Paul Pogba"}│"door" │1 │
└─────────────────────┴─────────────┴──────────┘
如何对列"count(i)&;"中的所有值求和在neo4j中使用Cypher ?
通过返回c, i.kit, count(i)
来强制分割。图形数据库所做的一切都是有意义的。返回count(i)
如果出于某种奇怪的原因,你想要得到你想要的结果。
MATCH (c:Customers {name:'Paul Pogba'})-[:ORDERED]->(o:Orders)-[:BOUGHT]->(i:Items)
WITH collect(DISTINCT c) AS _c, collect(DISTINCT i) AS _i, count(i) AS count_i
UNWIND _c AS c
UNWIND _i AS i
RETURN c, i.kit, count_i