[英]How to structure MySQL daily checklist database
你可以这样做:
TasksDefinition
Id PK
TaskName NN
TasksWhen
Id PK
TaskId FK, TasksDefinition.id
Day NN --> what day should task Id be completed
History
Id PK
TaskId FK, TasksDefinition.Id
Date NN
Done NN, boolean, default False
PK:主键
FK:外键
NN:不是 null
每个任务都在 TasksDefinition 中定义
TasksWhen 存储每项任务应该在哪一天完成的信息。 每个月的每个任务/天一个条目(例如 1 到 31)。 或者 0-6,如果你想使用工作日。 使用表格可以让您在许多天内完成一些任务。 前任。 对于任务 X,在第 1、4 和 28 天需要 TasksWhen 中的 3 个条目。
在每天 0001,您的应用程序执行以下操作:
当你构建你的界面时,你只查询历史表。 这将为您提供每天完成(或未完成)的任务。 完成状态也会进入历史表。
您可以使用月中的某天或工作日来指定每天必须完成哪些任务。 您甚至可以混合使用两者。 只要您的应用程序能够弄清楚,您就可以了。
月度报告是根据历史表中的数据构建的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.