SQL查询计数如果分组后为datediff

时间:2013-04-23 03:30:22

标签: sql ms-access

我有一个表,前三个条目是这样的:

 name   | jobnum | startdate | enddate

 name1  | 1      | 15/2/1990 |  11/3/1990
 name2  | 2      | 12/2/1991 |  13/2/1991
 name1  | 3      | 15/1/1997 |  11/2/1998

我需要对它们进行分组

它会显示

name | #jobs | # of times job ends before 30 days

我知道如何显示前两列。但最后一个让我困惑。

SELECT Table1.name, Count(Table1.start) AS #jobs
FROM Table1
GROUP BY Table1.name

感谢。

1 个答案:

答案 0 :(得分:0)

尝试下面的内容,它是未经测试的,我相信你可以在Access中减去日期,但如果不使用相同的理论但是使用了约会功能....

SELECT Table1.name, Count(Table1.start) AS #jobs, 
    sum(IIF(Table1.enddate - Table1.Startdate < 30,1,0)) As LessThan30Days
FROM Table1
GROUP BY Table1.name