сутки с 19:00 до 19:00 (3 смена)

philips
Дата: 04.02.2013 18:10:00
Интересует подход как посчитать сутками время с 19:00 до 19:00 (3 смена).
Время работы считается по первому входу и последнему выходу. для 1 и 2 смены нормально.
А для 3 смены. Причем чел может поэто время выйти.
Гость333
Дата: 04.02.2013 18:13:00
philips
для 1 и 2 смены нормально

...но запрос я вам всё равно не покажу.
philips
Дата: 04.02.2013 20:28:54
Гость333,
SELECT     TOP (100) PERCENT MIN(CONVERT(varchar, [CheckPoint].PassInfo.VisitDate, 114)) AS time, [CheckPoint].PassInfo.VisitDate - CONVERT(varchar(8), 
                      [CheckPoint].PassInfo.VisitDate, 108) AS date, [CheckPoint].PassInfo.CheckPointId, [CheckPoint].Personal.TabNumFull, 
                FROM         [CheckPoint].PassInfo 
GROUP BY [CheckPoint].PassInfo.CheckPointId, [CheckPoint].PassInfo.VisitDate - CONVERT(varchar(8), [CheckPoint].PassInfo.VisitDate, 108), 
                      [CheckPoint].Personal.TabNumFull,date 


Ключевым является MIN(CONVERT(varchar, [CheckPoint].PassInfo.VisitDate, 114)) AS time

Хочется заменить VisitDate на другой промежуток времени - типа 19:00 -11:00
Гость333
Дата: 04.02.2013 20:39:30
philips,

Вот недавно похожая тема была: http://www.sql.ru/forum/actualthread.aspx?tid=1001895
aleks2
Дата: 05.02.2013 06:10:37
philips
Интересует подход как посчитать сутками время с 19:00 до 19:00 (3 смена).
Время работы считается по первому входу и последнему выходу. для 1 и 2 смены нормально.
А для 3 смены. Причем чел может поэто время выйти.

А ты пиши ПОЛНУЮ дату, а не одно время. И будет тибе щастье.
Cygapb-007
Дата: 05.02.2013 07:40:41
угу, и время работы по формуле (примерно)
DATEDIFF(MINUTE,MIN(@datetime),MAX(@datetime))/60.0