MySQL-在特定日期记录中查找缺少的月份

时间:2018-07-31 11:45:04

标签: mysql

我有一张表,上面有员工的工资记录

employee_table (employee_idn, pay_date, pay_amount)
employee_idn pay_date pay_amount
1, 2017-04-17,  100  
1, 2017-05-17,  100    
1, 2017-08-17,  100  
2, 2017-04-17,  200  
2, 2017-09-17,  200    
3, 2017-08-17,  500  

如果我在日期范围"2017-04-01" to "2018-03-31"中传递,我想让员工知道直到结束日期才向用户付款的月份(丢失月份)。因此,对于结果集,按员工,例如,employee_idn(1),我想回来

1, 2017-06-30,  0  
1, 2017-07-31,  0    
1, 2017-09-30,  0 
1, 2017-10-31,  0 
1, 2017-11-30,  0 
1, 2017-12-31,  0 
1, 2018-01-31,  0 
1, 2018-02-28,  0  
1, 2018-03-31,  0 

,其他雇员也是如此(2,3)。

我的mysql版本是5.1.30-community-log

我尝试了多种方法,但是没有运气。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

您需要通过脚本来执行此操作,您不能总是依靠数据库来执行此操作,如果这样做,您的代码将更快得多,因为已经存在可以处理日期范围的现成函数。< / p>