找出就业历史上的差距

时间:2014-03-05 17:36:07

标签: php mysql

我有一张包含工作历史的表格,其中包含开始和结束日期,可能会有重叠的工作。我需要找到日期中一个月或更长时间的所有差距。理想情况下我会用PHP来做,但如果可以编写一个MySQL查询来更好地处理这个问题,那就没关系了。

这是数据结构:

CREATE TABLE employer_history ( 
   EmployerID int(11) NOT NULL AUTO_INCREMENT,
   ehFromDate date DEFAULT NULL,
   ehToDate date DEFAULT NULL,
   PRIMARY KEY (EmployerID) )
ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;

我想使用ehFromDate和ehToDate检查每条记录,以找出差距,即。

ehFromDate = 2004-06-24
ehToDate = 2007-03-11

ehFromDate = 2007-03-12
ehToDate = 2007-08-15

ehFromDate = 2007-06-13
ehToDate = 2007-09-02

ehFromDate = 2007-10-23
ehToDate = 2008-02-14

ehFromDate = 2008-02-15
ehToDate = 2011-09-30

上述日期意味着2007-09-02至2007-10-23之间存在差距。

此刻我无法深入探讨解决这个问题的最佳方法。如果我能保证永远不会有重叠,那么它就非常直接。上面的例子有重叠来说明我的观点。

非常感谢任何想法。

干杯

乔恩

0 个答案:

没有答案