基于事件的mysql更新列

基于事件的mysql更新列,mysql,time,sql-update,Mysql,Time,Sql Update,我有一个数据库表,其中包含了几年来在几个领域的不同农业实践的数据。农民根据完成某项活动的日期输入信息。一个简化的示例如下所示,其中ID是一个自动增量值 ID|Field|Date |Activity | 1|A |2012/08/01|Tillage | 2|A |2012/08/24|Seeding | 3|A |2013/03/05|Spraying | 4|A |2013/03/05|Fertilizer| 5|A |2013/

我有一个数据库表,其中包含了几年来在几个领域的不同农业实践的数据。农民根据完成某项活动的日期输入信息。一个简化的示例如下所示,其中ID是一个自动增量值

ID|Field|Date      |Activity  |
 1|A    |2012/08/01|Tillage   |
 2|A    |2012/08/24|Seeding   |
 3|A    |2013/03/05|Spraying  |
 4|A    |2013/03/05|Fertilizer|
 5|A    |2013/07/25|Harvest   |
 6|B    |2012/09/01|Tillage   |
 7|B    |2012/09/05|Seeding   |
 8|B    |2013/04/05|Spraying  |
 9|B    |2013/07/28|Harvest   |
10|B    |2010/08/24|Tillage   |
11|B    |2010/09/29|Seeding   |
12|B    |2011/05/01|Fertilizer|
13|B    |2011/07/12|Harvest   |
14|A    |2011/09/01|Seeding   |
15|A    |2011/10/10|Spraying  |
16|A    |2012/04/10|Fertilizer|
17|A    |2012/08/02|Harvest   |
现在我想添加一个名为“季节”的专栏,它只包含田地收割的年份,但会自动更新各个田地上一次收割和这次收割之间的所有其他活动。请注意,不同田地的收获日期不同。在本例中,理想情况下输出如下:

ID|Field|Date      |Activity  |Season
 1|A    |2012/08/01|Tillage   |2013
 2|A    |2012/08/24|Seeding   |2013
 3|A    |2013/03/05|Spraying  |2013
 4|A    |2013/03/05|Fertilizer|2013
 5|A    |2013/07/25|Harvest   |2013
 6|B    |2012/09/01|Tillage   |2013
 7|B    |2012/09/05|Seeding   |2013
 8|B    |2013/04/05|Spraying  |2013
 9|B    |2013/07/28|Harvest   |2013
10|B    |2010/08/24|Tillage   |2011
11|B    |2010/09/29|Seeding   |2011
12|B    |2011/05/01|Fertilizer|2011
13|B    |2011/07/12|Harvest   |2011
14|A    |2011/09/01|Seeding   |2012
15|A    |2011/10/10|Spraying  |2012
16|A    |2012/04/10|Fertilizer|2012
17|A    |2012/08/02|Harvest   |2012

对于目前的数据,我将如何做到这一点?触发器是未来数据输入的良好应用程序吗?

您真的需要将其存储在新列中吗?您也可以在运行时查询它,或者创建一个视图,该视图类似于从表中按字段分组选择字段,年份(MAX(Date))作为年份如果收割和播种在同一年进行,这将起作用,但例如播种在2011年秋季进行,而收割在2012年夏季进行。所以我更喜欢能说明这一点的东西。此外,我对每个领域都有多个季节,如我理解的示例所示。我没有完全理解这个问题。