你用int来存就是了.select datediff(day,'2001-1-1','2002-1-1') 天
select datediff(month'2001-1-1','2002-1-1') 月
select datediff(mi,'2001-1-1','2002-1-1') 分钟

解决方案 »

  1.   

    select  dateadd(month,-24,'2002-12-14')
    ---------------------^^^减
    select  dateadd(day,-24,'2002-12-14')
    ----------------^^^天或year年select  dateadd(mi,100,'2002-12-14') 加分钟
      

  2.   

    那就用datetime存储,不过里面是包含日期信息就,这个你不用更它,在显示的时候只显示时间就行了.
    例如:
    declare @dd1 datetime,@dd2 datetime
    select @dd1='003-08-01 22:01:07',@dd2='2003-08-01 23:11:07'
    select @dd1,@dd2,convert(varchar,@dd2-@dd1,108)
      

  3.   

    convert(varchar,datetime字段,108)这句就只显示 datetime字段 中的时间部分,按  hh:mm:ss 的格式.