현재 시간을 기준으로 시프트를 시도 중입니다. 나는 출발 시간이 끝나는 시프트 마스터를 가지고있다. 변속 타이밍은 다음과 같습니다.시프트 타이밍 계산 문제
A - 06:00 -- 14:00
B - 14:00 -- 22:00
C - 22:00 -- 06:00
i 현재 시간 기준으로 처음 두 시프트가 발생합니다. 그러나 나는 세 번째 변화를 얻지 못하고있다. 예 : 현재 시간은 01.30 다음 내가
현재 시간을 기준으로 시프트를 시도 중입니다. 나는 출발 시간이 끝나는 시프트 마스터를 가지고있다. 변속 타이밍은 다음과 같습니다.시프트 타이밍 계산 문제
A - 06:00 -- 14:00
B - 14:00 -- 22:00
C - 22:00 -- 06:00
i 현재 시간 기준으로 처음 두 시프트가 발생합니다. 그러나 나는 세 번째 변화를 얻지 못하고있다. 예 : 현재 시간은 01.30 다음 내가
아웃로 "C"를 받아야하는 경우 당신은 같은 "C"에 대한 또 다른 기록을 추가 할 수 있습니다
C - 22:00 -- 24:00
C - 00:00 -- 06:00
이
는 또한 다소 복잡한 SQL 만들 수 있습니다 :
SELECT shift
FROM table
WHERE end > '1:30'
AND (
start <= '1:30'
OR
start > end
)
+1 흥미로운 논리 – RichardTheKiwi
다음 날로 전달되는 교대조를 처리해야합니다.
where
curtime() >= starttime and
curtime() < if(endtime>starttime,endtime,adddate(endtime,interval 1 day))
현재 시도가 표시된 일부 SQL을 추가하는 것을 잊었습니다. – Tomalak