如何在数据库中存储最后5天的值?

时间:2014-11-10 05:05:25

标签: mysql database

我的数据库中有两个表 表1和表2.每天我都会在午夜更新Table1,具体取决于表2中存储的分数值。

表格的结构就像。

id |评分

但是现在我想根据自最近5天或30天以来存储在表2中的得分值来更新Table1。

例如,自最近5天以来表2中的得分值为:

DAY1 + DAY2 +第三天第四天+ + DAY5

2 + 3 + 4 + 5 + 3 = 17。

然后在第5天的午夜,数据库更新Table1并将特定id的得分值增加到17。

第二天,在午夜更新Table1时,应考虑第2天的得分值。例如:

DAY2 +第三天第四天+ + +第5天第六天

3 + 4 + 5 + 3 + 9 = 24等......

是否可以在不创建每天列的情况下计算得分值?

1 个答案:

答案 0 :(得分:1)

截至您的问题,有两个案例: -

  1. 如果每天只有一个条目在table2中,那么你不需要创建任何可以使用rowid的列(如在oracle中),只有在table2中没有完成多个条目的情况下一天。

  2. 如果有多个条目,那么您只需要创建一个日期列的列,并且可以使用sysdate-5根据需要进行计算。您不需要为每天创建列。