2017-05-24 31 views
0

在卡桑德拉獲得同樣數目的彙總數據,平均值,最小值,最大值,我們使用的查詢像,:如何cqlengine查詢到從卡桑德拉表得到聚合值

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

但是,在cqlengine如何這樣做。? 我有名字和年齡的列。我想從列表中獲得平均年齡。 請幫助我在cqlengine中檢索avg(年齡)。

回答

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