두 테이블에 계획 구조가있어 하루와 세션별로 사용 가능한 슬롯을 저장합니다.계획 관리 슬롯/세션
슬롯은 하루 중 시간 범위로 정의됩니다.
CREATE TABLE slot (
`id` int(11) NOT NULL AUTO_INCREMENT
, `date` date
, `start` time
, `end` time
);
세션은 중복 될 수 없으므로 슬롯에 넣어야합니다.
CREATE TABLE session (
`id` int(11) NOT NULL AUTO_INCREMENT
, `date` date
, `start` time
, `end` time
);
세션을 만들려면 일정 기간 동안 사용 가능한 시간 블록 목록을 생성해야합니다.
예 :
INSERT INTO slot
(date, start, end)
VALUES
("2010-01-01", "10:00", "19:00")
, ("2010-01-02", "10:00", "15:00")
, ("2010-01-02", "16:00", "20:30")
;
INSERT INTO slot
(date, start, end)
VALUES
("2010-01-01", "10:00", "19:00")
, ("2010-01-02", "10:00", "15:00")
, ("2010-01-02", "16:00", "20:30")
;
2010-01-01
<##><####> <- Sessions
------------------------------------ <- Slots
10 11 12 13 14 15 16 17 18 19 20
내가 사용할 수있는 1 시간 공간 알아야 2010-01-02
<##########> <########> <- Sessions
-------------------- ------------------ <- Slots
10 11 12 13 14 15 16 17 18 19 20
:
+------------+-------+-------+
| date | start | end |
+------------+-------+-------+
| 2010-01-01 | 13:00 | 14:00 |
| 2010-01-01 | 14:00 | 15:00 |
| 2010-01-01 | 15:00 | 16:00 |
| 2010-01-01 | 16:00 | 17:00 |
| 2010-01-01 | 17:00 | 18:00 |
| 2010-01-01 | 18:00 | 19:00 |
| 2010-01-02 | 10:00 | 11:00 |
| 2010-01-02 | 11:00 | 12:00 |
| 2010-01-02 | 16:00 | 17:00 |
+------------+-------+-------+
귀하의 예가 정확하게 설명되어 있습니까? 당신은 결코'session'을 채우지 않습니다. –