我正试图想出一种在时间范围列表中进行查询的方法,根据不同的人的可用性将工作分配给他们。
因此,我正在对存储在MYSQL:中的表进行成像
Person | Available (day) | Available (hours) | Free (from) | Free (until)
Mateluna | Monday | 10:00 - 13:00 | 10:00 | 13:00
Mateluna | Monday | 15:00 - 19:00 | 15:00 | 19:00
DelloStritto | Tuesday | 12:00 - 18:00 | 12:00 | 18:00
DeFranco | Monday | 10:00 - 11:30 | 10:00 | 11:30
Richardson | Monday | 08:00 - 10:30 | 08:00 | 10:30
*从可用(小时)生成Free(from)和Free(until)的位置
这个想法是,我可以创建一个表单,用"Monday"&"10:00-11:30",函数将返回DeFranco和Mateluna。据我所知,这将涉及到必须在"可用(天)"内进行搜索,并能够在"可用的(小时)"时间范围内进行搜索——我不知道如何进行,也不知道是否可能。
目前,我可以创建一些有效的东西,但它更通用,例如,我可以搜索"星期一",查看星期一所有可用的人,然后我必须查看输出列表,以找到符合我需求的人,例如
Mateluna @ 10:00 - 13:00
DeFranco @ 10:00 - 11:30
Richardson @ 08:00 - 10:30
任何帮助,非常感谢我如何处理这个问题,我有一种感觉,这可能涉及到必须以不同的方式存储信息,但我不确定。
我认为出于您的目的,您可以在查询中使用"AND"或"joins"。。。。例如
从db_name中选择*,where available(day)=%s AND available hours between%s AND%s;