Вопрос о дате и времени (SQL Server 2008) - PullRequest
2 голосов
/ 19 марта 2010

У меня есть таблица, которая содержит поле даты и времени.

id|date|time
=========
1|01/01/2001|10:45
2|01/02/2002|11:45
3|01/03/2003|12:45
4|01/04/2004|12:55

Мне нужно знать разницу между MAX(date) и MIN(date)

И МАКС (время) и МИН (время)

Что-то вроде .... MAX(date)-MIN(date) ??? .....

Заранее спасибо

Ответы [ 2 ]

3 голосов
/ 19 марта 2010

DATEDIFF ваш друг.

Чтобы получить разницу в количестве дней: SELECT DATEDIFF(day, MIN(date), MAX(date)) FROM [table] = 1186

Чтобы получить разницу в количестве часов: SELECT DATEDIFF(hour, MIN(time), MAX(time)) FROM [table] = 2

Чтобы получить разницу в количестве минут: SELECT DATEDIFF(minute, MIN(time), MAX(time)) FROM [table] = 130

0 голосов
/ 19 марта 2010

Очень простой способ получить то, что вы просите, это ...

SELECT 
[DifferanceInMinutes] = DATEDIFF(mi,(SELECT MIN(YourDate) FROM MyTable),(SELECT MAX(YourDate) FROM MyTable))

http://msdn.microsoft.com/en-us/library/ms189794.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...