0

在 Cassandra 中,为了获取 sum、avg、min、max 等聚合数据,我们使用如下查询:

SELECT avg(race_points) FROM cycling.cyclist_points WHERE id=e3b19ec4-774a-4d1c-9e5a-decec1e30aac;

但是,在 cqlengine 中这是如何完成的。?我有名称和年龄的列。我想从列表中获取平均年龄。请帮助我在 cqlengine 中检索 avg(age)。

4

1 回答 1

0

在 cql 引擎中找不到任何聚合,我们需要一个接一个地迭代查询集,使用 values_list 来减少大查询集的内存使用。

live_data = list(LiveStats.objects.all().values_list('cpuinfo', 'memused'))                                                                                                      
total_count = len(live_data)
        if total_count > 0:
            cpu_info, mem_used = 0, 0
            for live in live_data:
                cpu_info += live[0]
                mem_used += live[1]
            avg_cpu = cpu_info / total_count
            avg_memory = mem_used / total_count
于 2018-01-21T07:45:04.800 回答