2

晚上好。

如何计算 6 个月(学期或两个学期)的期限?

解释:有一个电子表格,我将其转换为 MySQL 数据库,其中包含以下相关的列CourseBeginDurationCourse是一个字符串字段,结合另一个表中的信息返回DurationBegin字段是课程开始的一年学期(如 2010-2 是 2010 秒学期)。持续时间是年数。

格式

表格1

**Course**       **Begin**
Graduation 1     2010-1

表2

 **Course**      **Duration**
 Graduation 1    4,5

2010-1 表示 2010 年第一学期,4.5(实际上是 4.5 年 - 四点五年)表示四年半,最终日期类似于 2014-1。不幸的是,字段格式来自另一个我无权更改的数据库,我只能导入数据。

这可能很简单,也可能非常简单。

[编辑]我希望现在是正确的。[编辑] 这将从第一个数据库导入,计算并导入另一个数据库。

4

1 回答 1

1

MySQL 没有对学期的标准支持,因此您必须先转换为月份(也支持季度,但就日期而言,使用月份更容易)。

这意味着您需要将“2010-1”替换为“2010-01-01”,将“2010-2”替换为“2010-07-01”。这可以用REPLACE($begin, '-1', '-01-01')和来完成REPLACE($begin, '-2', '-07-01')

对于每个学期,您可以添加 6 个月:DATE_ADD('2010-01-01', INTERVAL 6 MONTH)将返回“2010-07-01”。将“持续时间”乘以 12,这将得出移动“开始”所需的月数。

于 2012-08-31T19:18:51.970 回答