从查询SQL Server中的每个日期获取第一个和最后一个日期时间

时间:2014-10-02 06:55:45

标签: sql sql-server

我拥有的是:

| Equipment Name | Event          | Time of Event           |
-------------------------------------------------------------
| EX001          | Brake Active   | 2014-09-29 20:05:10 000 |
| EX001          | Brake Active   | 2014-09-29 20:07:10 000 |
| EX001          | Brake Active   | 2014-09-30 06:07:10 000 |
| EX001          | Brake Active   | 2014-09-30 18:05:10 000 |
| EX001          | Brake Inactive | 2014-09-29 20:05:45 000 |
| EX001          | Brake Inactive | 2014-09-29 20:06:10 000 |
| EX001          | Brake Inactive | 2014-09-29 23:01:10 000 | 

等等

我想知道每个日期的事件数量,从最初发生的次数到最后一次发生,并显示日期和计数。我有一个查询计算它在几天但无法显示拳头和最后一次发生。

我想要的是:

| Equipment Name | Event          | First Occurrence  | Last Occurrence   | Event Count |
-----------------------------------------------------------------------------------------
| EX001          | Brake Active   | 2014-09-29 20:05  | 2014-09-30 18:05  |     4       |
| EX001          | Brake Inactive | 2014-09-29 20:45  | 2014-09-29 23:01  |     3       |

等等

全部来自一个表

请帮帮我们。

1 个答案:

答案 0 :(得分:2)

试试这个:

SELECT MIN(timeevent), MAX(timeevent), COUNT(*)
FROM equipment
GROUP BY equipmentname, event