"2009-7-24 10:55:01";
 "2009-7-24 11:56:01";我想得到这两个时间的差!

解决方案 »

  1.   

    datediff计算出来的也是单个差吧  时分秒   没这样算过
      

  2.   

    SELECT DATEDIFF(SS,'2009-7-24 10:55:01','2009-7-24 11:56:01')
      

  3.   

    datediff的语法是 datediff(时间段标志,被减的时间,用来做为主减的时间)  例如, datediff(day,createdon,getdate())
       就是显示当前时间getdate()与时间createdon之间的相差的天数,就是getdate()-createdon 为几天   时间段的标志 包括:hour,day,month,year 小时,天,月,年
      

  4.   

    declare @starttime as datetime
    declare @endtime as datetime
    set @starttime = '2009-7-24 10:55:01' 
    set @endtime = '2009-7-24 11:56:01'select right('00'+ cast(cast(datediff(ss ,@starttime,@endtime) / 3600 as int) as varchar),2) + ':' + 
           right('00'+ cast(cast(datediff(ss ,@starttime,@endtime) % 3600 / 60 as int) as varchar),2) + ':' + 
           right('00'+ cast(cast(datediff(ss ,@starttime,@endtime) % 60 as int) as varchar),2)/*--------------
    01:01:00(1 行受影响)
    */
      

  5.   

    DATEDIFF ( datepart , startdate , enddate ) 
    参数datepart是规定了应在日期的哪一部分计算差额的参数。下表列出了 Microsoft® SQL Server™ 识别的日期部分和缩写。日期部分 缩写
    year yy, yyyy
    quarter qq, q
    Month mm, m
    dayofyear dy, y
    Day dd, d
    Week wk, ww
    Hour hh
    minute mi, n
    second ss, s
    millisecond ms
      

  6.   

    SELECT DATEDIFF(YY,'2009-7-24 10:55:01','2009-7-24 11:56:01') --年
    SELECT DATEDIFF(M,'2009-7-24 10:55:01','2009-7-24 11:56:01') --月
    SELECT DATEDIFF(D,'2009-7-24 10:55:01','2009-7-24 11:56:01') --日
    SELECT DATEDIFF(HH,'2009-7-24 10:55:01','2009-7-24 11:56:01') --时
    SELECT DATEDIFF(N,'2009-7-24 10:55:01','2009-7-24 11:56:01') --分
    SELECT DATEDIFF(S,'2009-7-24 10:55:01','2009-7-24 11:56:01') --秒
    SELECT DATEDIFF(MS,'2009-7-24 10:55:01','2009-7-24 11:56:01') --毫秒
      

  7.   

    DATEDIFF
    返回跨两个指定日期的日期和时间边界数。 语法
    DATEDIFF ( datepart , startdate , enddate ) 参数
    datepart是规定了应在日期的哪一部分计算差额的参数。下表列出了 Microsoft® SQL Server™ 识别的日期部分和缩写。日期部分 缩写 
    year yy, yyyy 
    quarter qq, q 
    Month mm, m 
    dayofyear dy, y 
    Day dd, d 
    Week wk, ww 
    Hour hh 
    minute mi, n 
    second ss, s 
    millisecond ms 
    startdate是计算的开始日期。startdate 是返回 datetime 或 smalldatetime 值或日期格式字符串的表达式。 因为 smalldatetime 只精确到分钟,所以当用 smalldatetime 值时,秒和毫秒总是 0。如果您只指定年份的最后两位数字,则小于或等于"两位数年份截止期"配置选项的值的最后两位数字的数字所在世纪与截止年所在世纪相同。大于该选项的值的最后两位数字的数字所在世纪为截止年所在世纪的前一个世纪。例如,如果 two digit year cutoff 为 2049(默认),则 49 被解释为 2049,2050 被解释为 1950。为避免模糊,请使用四位数的年份。有关时间值指定的更多信息,请参见时间格式。有关日期指定的更多信息,请参见 datetime 和 smalldatetime。 enddate是计算的终止日期。enddate 是返回 datetime 或 smalldatetime 值或日期格式字符串的表达式。返回类型
    integer