2015-09-09 2 views
-2

У меня есть данные о сотрудниках. Я хочу создать диаграмму посещаемости сотрудников.Как рассчитать посещаемость в SQL Server

данных, как это:

paycode  date   time 
----------------------------------------  
4007  11-02-2013 19:51:00.0000000 
4007  11-02-2013 20:00:00.0000000 
4007  11-02-2013 20:36:00.0000000 
4007  11-02-2013 21:05:00.0000000 
4007  11-02-2013 21:55:00.0000000 
4007  11-02-2013 22:32:00.0000000 
4007  11-02-2013 22:52:00.0000000 
4007  11-02-2013 23:22:00.0000000 
4007  11-02-2013 23:52:00.0000000 
4007  11-03-2013 00:26:00.0000000 
4007  11-03-2013 01:05:00.0000000 
4007  11-03-2013 01:32:00.0000000 

Я хочу, чтобы результаты выглядеть следующим образом:

paycode date intime outtime working_hour 
--------------------------------------------- 

Как я могу это сделать?

+1

Вы должны точно указать, какие интимного, outtime, working_hour значит и дают нам пример вывода. Что вы пробовали? У тебя есть идеи? Или вы ожидаете, что мы разрешим вам эту проблему? – tobypls

+0

Что означает промежуточный столбец? возможно, вам не хватает колонки для проверки и проверки в вашем дизайне – mcha

ответ

1

Попробуйте так:

select paycode, date, min(time) as intime, max(time) as outtime, 
((DATEDIFF(MINUTE, min(time), max(time))/60 + 'hr' + (DATEDIFF(MINUTE, min(time), max(time))%60 + 'min')as working_hour 
from tablename 
group by paycode,date 
+0

intime и outtime дают то же время –

+0

@davidsam: - Обновлен мой ответ! –

Смежные вопросы