0

我有一个名为员工的表,列是

empid,empname,joining date,retiring date  
1,employee,2000-1-1,2010-3-1

我必须获取员工的服务年限。输出应如下所示:

years  months
10      2
4

1 回答 1

5

您可以使用 MySQL 的TIMESTAMPDIFF()函数获取整年数以及加入和退休日期之间的整月数,然后取后者模 12 以获取自上一整年以来的月数:

SELECT empname,
       TIMESTAMPDIFF(YEAR,  `joining date`, `retiring date`)      AS years,
       TIMESTAMPDIFF(MONTH, `joining date`, `retiring date`) % 12 AS months
FROM   employee

sqlfiddle上查看。

于 2012-10-14T08:35:54.867 回答