0

我正在尝试为客户开发一个工具,该工具返回一周中给定日期和时间的所有可用用户。例如,用户将输入他们当前的每周计划,数据库将存储该计划。该表的每一行都将包含用户名、星期几、不可用的开始时间和不可用的结束时间。如果客户要输入一天、开始时间和结束时间,我希望脚本返回在该给定时间可用的所有用户。您对如何解决这个问题有任何想法吗?具体来说,我正在寻找最有效的方式来存储和处理信息。任何帮助将不胜感激。下面是一个可能的表结构示例:

UserName     DayOfWeek     StartTime     EndTime   //Times when unavailable
jdoe         Mon           09:30:00      10:30:00
jdoe         Mon           11:30:00      12:45:00
jdoe         Tue           14:50:00      16:20:00
hsmith       Wed           16:20:00      17:55:00           
4

1 回答 1

0

将开始和结束时间存储为日期,例如2011-01-01 09:00:00,为了可用性,您可以执行类似的操作

SELECT *
  FROM userTable
  WHERE userName NOT IN (SELECT userName
                           FROM userTable
                           WHERE #{date to check} BETWEEN startTime AND endTime)

我还没有尝试过,还有一些标准化要做,但应该是一个起点

于 2011-07-08T01:34:08.047 回答