我正在尝试计算具有特定属性键的节点数量 我目前有:
MATCH (a:address)
WHERE a.countries = "Austria"
RETURN count(a)
计算单个节点。
我想迭代这个大量的属性键列表,例如"奥地利","丹麦","芬兰"无需手动更改每个密钥
我该怎么做?
答案 0 :(得分:0)
让我们创建一个小示例数据集:
CREATE (:address {name: "Vienna", countries: "Austria"})
CREATE (:address {name: "Salzburg", countries: "Austria"})
CREATE (:address {name: "Munich", countries: "Germany"})
要计算每个国家/地区的address
个节点,请使用以下查询:
MATCH (a:address)
RETURN a.countries, count(a)
由于Cypher是一种声明性查询语言,因此您无需迭代结果 - 查询引擎会为您执行此操作。有关详细说明,请查看aggregation上的文档。
返回:
╒═════════════╤══════════╕
│"a.countries"│"count(a)"│
╞═════════════╪══════════╡
│"Austria" │"2" │
├─────────────┼──────────┤
│"Germany" │"1" │
└─────────────┴──────────┘
注意:我不熟悉您的数据模型,但我认为使用单数country
将是属性名称的更好选择。