日期&时间查询问题(SQL Server 2008)

时间:2010-03-19 08:15:49

标签: sql-server-2008

我的表格包含日期和时间字段。

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(时间)和MIN(时间)

像...... MAX(date)-MIN(date) ??? .....

提前致谢

2 个答案:

答案 0 :(得分:3)

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

答案 1 :(得分:0)

获得所要求的一种非常简单的方法是......

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

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