[英]Neo4j, Cypher Use COUNT with COLLECT to return JSON
我正在尝试返回这样的JSON对象:
{ "rels": [
{
"rel": "type_1",
"foos": 15
},
{
"rel": "type_2",
"foos": 2073
},
{
"rel": "type_3",
"foos": 23
} ] }
使用查询。
MATCH (n:bar)<-[r:REL]-(n1:foo)
WHERE n.bar_id='1234567890'
RETURN collect({rel: r.rel_status, foos: count(r.rel_status)}) AS rels
REL关系具有称为rel_status的属性。
错误:无法在聚合函数内部使用聚合函数。
这是因为您试图在collect()
使用count()
collect()
,这是不允许的。 您需要一次完成这些步骤。
MATCH (n:bar)<-[r:REL]-(:foo)
WHERE n.bar_id='1234567890'
WITH r.rel_status as rel, count(r) as foos
RETURN collect({rel: rel, foos: foos}) AS rels
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.