【问题标题】:Visibility schedule能见度时间表
【发布时间】:2009-11-26 08:56:14
【问题描述】:

我想要一个简单的数据库表来跟踪网站索引上的预定类别可见性。基本上它会告诉索引显示感恩节和圣诞节之间的圣诞节类别。

到目前为止,我正在考虑使用这样的表格,

schedule_id SMALLINT,

start_date TIMESTAMP,

end_date TIMESTAMP,

category_id SMALLINT,

annual BOOL

很简单,数据库可以选择时间介于开始/结束之间的任何行。

我的问题与我的年度旗帜有关。基本上我在想,数据库可以每天更新一次表,并在 end_date

我担心闰年之类的东西会抵消重新安排的日期。

我在正确的轨道上吗?

有没有更好的方法来做到这一点?

【问题讨论】:

    标签: php mysql scheduling


    【解决方案1】:

    如果您添加一年,而不是(例如)365 天,则您无需担心闰年问题。

     ADDDATE( date, INTERVAL 1 YEAR )
    

    将 1 年添加到闰日日期会得到下一年的 2 月 28 日

    2008-02-29 -> 2009-02-28
    

    您可以考虑将日程表从类别中分离出来,并使用一个连接表将类别链接到日程表。然后,如果您想在类别之间共享时间表,它会更容易一些。 您还可以通过添加其他联接表在其他地方使用这些时间表。

    最后一个建议,而不是使用 annual 字段,而是使用可空字段来指示周期性:每周、每月等,再次为您提供更灵活的计划模型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-31
      • 2022-12-18
      • 2020-05-19
      • 1970-01-01
      • 1970-01-01
      • 2013-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多