我们希望创建一个允许提供商根据时间指定不同价格的工作系统。因此,从晚上9点到5点在M-F,他们可能会收取10美元的特定工作,他们将在星期六 - 星期日晚上10点到9点收费。如何设计数据库以便跟踪不同时间指定的不同价格?我没有任何标准时间,但提供商可以随意选择他们想要的任何时间。
我在考虑以下结构:
价
provider_id
task_id
price
Mon
Tues
Wed
Thurs
Friday
Saturday
Sunday
time_start
time_end
因此,如果一个任务在M-F上,那么将为Mon,Tues,....列输入“1”,但是星期六,星期日将输入一个0。
答案 0 :(得分:3)
我肯定会把它分成几个表。您可以在一个表中完成所有操作,但最终,您可以更灵活地使用更多表。
我建议采用以下结构:
ProviderTable
TaskTable
时间表
PriceTable - 将时间和任务结合在一起
工作表 - 将价格和提供者联合起来
这可能看起来像很多前期工作,但后来,随着数据库的扩展,你会很高兴你做到了。