You could do something like this, where I am converting time to minutes to do the calculations. SELECT CASE WHEN DATEDIFF(dd,0,GETDATE())%7 BETWEEN 0 AND 4 THEN CASE WHEN DATEDIFF(minute, 0, GETDATE())%1440 BETWEEN 420 AND 930 THEN 1 WHEN DATEDIFF(minute, 0, GETDATE())%1440 BETWEEN 931 AND 1410 THEN 2 ELSE 3 END WHEN DATEDIFF(dd,0,GETDATE())%7 IN (5,6) AND DATEDIFF(minute, 0, GETDATE())%1440 BETWEEN 420 AND 930 THEN 4 END