【发布时间】:2012-11-12 16:48:45
【问题描述】:
我正在开发一个部分是员工时钟的应用程序。这不是太复杂,但我想确保我第一次朝着正确的方向前进。我目前有这个表结构:
id - int
employee_id - int (fk)
timestamp - mysql timestamp
event_code - int (1 for clock in, 0 for clock out)
如果他们的最后一个活动是“打卡”,他们只会看到“打卡”按钮,反之亦然。
我的问题是,我们需要生成一份报告,显示员工在一个月内工作了多少小时,以及当前财政年度(自当年 6 月 1 日起)的总小时数。
似乎我可以在同一条记录中存储时钟输入和输出,甚至可以计算两个事件之间的工作分钟数并将其存储在一个名为“工作”的列中。然后,我只需要获取该员工所有该列的总和即可知道总共有多少时间。
我应该保持现有的结构,将每对时钟输入和输出事件移动到一行,还是有更好的方法让我完全错过?
我知道人为错误也是打卡器的一个大问题,因为人们经常忘记打卡或打卡,我不确定哪种结构可以更轻松地处理。
MySQL Timestamp 是一个不错的选择还是应该使用 UNIX Timestamp?
感谢您的任何建议/指导。
丰富
【问题讨论】:
标签: mysql datetime unix-timestamp