我目前有一个存储事件的事件表以及事件发生的星期几,表格看起来像这样。
EventID Title Mon Tue Wed Thu Fri Sat Sun
1 EventName 1 1 0 0 1 0 0
我希望能够为每个事件添加START和END时间,通常我会添加两个额外的列,例如StartTime和EndTime,但是开始和结束时间通常在一周中的每一天都不同。 / p>
设置表格以实现此目的的最佳方法是什么?
由于
答案 0 :(得分:0)
我想出了两个解决方案:
创建另一个表,其中包含事件ID和星期几作为主键,每个表都有START和END
EventID Day Start End
优点:如果事件是"稀疏"没有空,没有空间。 缺点:需要加入
看起来像这样:
EventID Title Mon Tue Wed Thu Fri Sat Sun MonStart MonEnd TueStart TueEnd ... SunStart SunEnd
优点:如果事件是"密集",则不需要加入
答案 1 :(得分:0)
You should add Table Event_Details with below schema
EventDetailsID
EventID (Foreign Key)
Mon_Timings
Tue_Timings
Wed_Timings
Thrus_Timings
Fri_Timings
Sat_Timings
Sun_Timings
Sample data entry for the Event_Details table should be like below
EventDetailsID = 1
EventID = 1
Mon_Timings = 08:00-20:00
Tue_Timings = 09:00-19:00
Wed_Timings = NULL
Thrus_Timings = NULL
Fri_Timings = 10:30-21:30
Sat_Timings = NULL
Sun_Timings = NULL
At time of saving data you can have StartTime-EndTime format
and when you want to retrieve you can split by '-'
This will have less number of rows , which will retrieve data faster