Выберите день недели MS SQL?
У меня есть приложение для рабочего времени работников...
Мне нужно если это суббота или воскресенье работать с моим кодом
Без
CASE WHEN WEEKDAY(a.vrijemeodjave) in (1,7) then 0 else
КОД РАБОТАЕТ НОРМАЛЬНО
Оператор Microsoft SQL 2016
Что я уже пробовал:
SELECT a.id, a.redni_broj , a.radnik, isnull(convert(varchar(20), a.vrijemeodjave, 113), '') as vrijemeodjave, convert(varchar(20), b.vrijemeprijave, 113) as vrijemeprijave, CASE WHEN WEEKDAY(b.vrijemeprijave) in (1,7) then 0 else (CASE WHEN (DATEDIFF(SECOND, b.vrijemeprijave, a.vrijemeodjave) / 3600) > 8 THEN 8 ELSE(DATEDIFF(SECOND, b.vrijemeprijave, a.vrijemeodjave) / 3600) END) end AS radni_sati, CASE WHEN WEEKDAY(a.vrijemeodjave) in (1,7) then 0 else (CASE WHEN(DATEDIFF(SECOND, b.vrijemeprijave, a.vrijemeodjave) / 3600) > 8 THEN(DATEDIFF(SECOND, b.vrijemeprijave, a.vrijemeodjave) / 3600) - 8 ELSE NULL END) end AS prekovremeni FROM(SELECT id, redni_broj, radnik, vrijemeodjave, ROW_Number() OVER(Partition By id ORDER BY vrijemeprijave) as RowNum FROM dbo.prijava_radnika) a INNER JOIN(SELECT id, redni_broj, radnik, vrijemeprijave, (ROW_Number() OVER(Partition By id ORDER BY vrijemeprijave) - 1) as RowNumMinusOne FROM dbo.prijava_radnika) b ON a.id = b.id where 1 = 1
Goran Bibic
1 - воскресенье, 7-суббота...Я надеюсь, что это так..