从下面的图片中,我想...
1.查找解决方案以存储每个用户的不可用日期。
2.我想选择在指定日期范围内可用的用户。
红色=不可用,白色=可用。
示例:我将在第3天到第4天参加培训课程,因此我应该得到Mr.A和Mr.C作为查询结果。
最佳答案
好吧,你可以有一个这样的表:
Create table course_calendar (
date date not null,
course_id int not null,
tutor_id int default null,
primary key (date, course_id)
) engine = innodb;
create table tutor_calendar (
date date not null,
tutor_id int not null,
available enum('Y','N') default 'N',
Primary key (date, tutor_id)
) engine = innodb;
然后,您需要将两个表连接起来,看看哪个course_calendar的tutor_id为null
并查看同一日期的哪个tutor_calendar具有tutor_id和available ='Y'。
关于mysql - SQL:如何存储和选择在同一日期范围内有空的人,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43732777/