如何在Neo4j中使用Cypher查询对_分组并取平均值
我在图形数据库中创建了两个节点:机场和承运人。它由一个名为“delayed_by”的属性关联如何在Neo4j中使用Cypher查询对_分组并取平均值,neo4j,cypher,Neo4j,Cypher,我在图形数据库中创建了两个节点:机场和承运人。它由一个名为“delayed_by”的属性关联 MATCH (origin:origin_airport {name: row.ORIGIN}), (carrier:Carrier {name: row.UNIQUE_CARRIER}) CREATE (origin)-[:delayed_by {dep_delay: row.avg_dep_delay}]->(carrier) ") 在这里,origin_机场有始
MATCH (origin:origin_airport {name: row.ORIGIN}),
(carrier:Carrier {name: row.UNIQUE_CARRIER})
CREATE (origin)-[:delayed_by {dep_delay: row.avg_dep_delay}]->(carrier)
")
在这里,origin_机场有始发机场的名称,承运人有承运人的名称。dep_delay保存每个航班延迟的值。这里我需要按运营商分组,并使用Neo4j中的cypher查询计算每个运营商的延迟平均值。以表格格式表示,我的输入文件的格式如下所述:
ORIGIN UNIQUE_CARRIER avg_dep_delay
ABE DL 15
ABE EV 12
ABQ DL 14
ABQ AS 2
ABQ EV 20
ABQ AS 6
我想要以下格式的结果。我需要按唯一的_承运人分组,并获得每个承运人出发延误的平均值
UNIQUE_CARRIER avg_dep_delay
DL 14.5
EV 16
AS 4
我不确定对分组的查询,并取每个组的平均值。我在使用下面的查询时遇到语法错误
MATCH (oa:origin_airport)-[d:delayed_by]->(c:Carrier)
WITH c, AVG(d) As avg
RETURN c.name AS Carrier, avg
ORDER BY avg DESC
LIMIT 10
您需要将属性指定为
AVG
:
MATCH ()-[d:delayed_by]->(c:Carrier)
RETURN c.name AS Carrier,
AVG(toFloat(d.dep_delay)) As avg
ORDER BY avg DESC
LIMIT 10
@如果您对答案感到满意,请不要忘记接受它[]谢谢您让我知道这一点。我刚问了。你能帮我回答另外一个关于密码查询的问题吗?