Как получить общее время в часах - PullRequest
0 голосов
/ 22 февраля 2012

У меня есть таблица с именем tblMaintainsHdr. У меня есть следующие столбцы

asset_ID maintns_StrtDate Maintns_EndDate  Maintains_strtTime      Maintains_EndTime

 1       2011-12-09       2011-12-09     2011-12-09 12:03:00.000   2011-12-09 12:03:00.000
 2       2011-12-10       2011-12-12     2011-12-10 12:03:00.000   2011-12-12 12:03:00.000
 

Мне нужно рассчитать общее количество часов обслуживания, учитывая столбцы

maintains start time, maintains end time, maintains start date, maintains end date

1 Ответ

0 голосов
/ 22 февраля 2012

Использовать приведенный ниже SQL-скрипт.

    Declare @TableVar table(startDt Datetime, endDt Datetime, startTm dateTime, endTm dateTime)

    select * from @TableVar
    insert into @TableVar values ('2011-12-09','2011-12-09','2011-12-09 12:03:00.000','2011-12-09 12:03:00.000')
    insert into  @TableVar values('2011-12-10','2011-12-12','2011-12-10 12:03:00.000','2011-12-12 12:03:00.000')

/*  Without adding maintanance Start Date and End Date   */
 select 
        tot=sum(
                DATEDIFF(hh ,startTm ,endTm )
        )
    from @TableVar
-- It returns 48


/* With adding maintanance Start Date and End Date   */
    select 
        tot=sum(
                DATEDIFF(hh ,startDt + startTm ,endDt+endTm)
        )
    from @TableVar
-- It returns 96

Дайте мне знать, если не сработало. Если мой ответ сработал, отметьте Пометить как ответ

...