我想存储查询的结果,然后将这些结果与下一组进行比较。可能?

时间:2013-03-28 14:26:32

标签: php mysql compare average

//This is my query
SELECT bline_id, ROUND(Avg(flow),3) avg  
FROM   (SELECT id, bline_id, flow, date, CASE 
             WHEN @previous IS NULL 
               OR @previous = bline_id THEN @rownum := @rownum + 1 
             ELSE @rownum := 1 
           end rn, 
           @previous := bline_id 
    FROM   blf, 
           (SELECT @rownum := 0, 
                   @previous := NULL) t 
    WHERE bline_id > 0 and bline_id < 31
    ORDER  BY bline_id, 
              date DESC, 
              id) t 
  WHERE  rn < 11
  GROUP  BY bline_id

此查询获取最近10条记录的平均值。我希望能够将这些结果保存回数据库,并在添加新记录时将它们与下一组10进行比较。

我正在寻找的最终结果是能够判断平均值是否有+或 - 2%的变化。 这有意义吗?

1 个答案:

答案 0 :(得分:0)

您可以创建一个包含以下字段的表:

id,bline_id,avg,timestamp

每次添加记录时,请将上述查询的结果插入此表中。

然后,您可以将此表中的最新记录与之前的记录进行比较。