我在做一个考勤软件,在做数据库表的设计中碰到了麻烦。
我准备建立一个存放考勤刷卡原始记录的表,表中一条记录为每个员工每一天的刷卡资料。
我最先想把每一年的所有员工刷卡记录存放到一张表里,但如果公司员工人数比较多,比如1000人那么一年下来的记录数就达到365*1000=36.5万条记录,很庞大的记录,不知查询会不会很慢?
还有一个办法,就是每个月建立一张表,但每一年就要增加12张表,而且操作也不太方便。
在这两种方法中,我实在是不能确定用那一种,很难取舍。
不知有没有其它的好方法,请大家帮助分析分析。谢谢!
---------------------------------------------------------------
可以做一个历史表,存放所有记录,再建一个相同的表,存放近一个月的数据,一般查询,访问后者就可以了
---------------------------------------------------------------
几十万条记录不算大,用好索引肯定没问题,而且每年的表数据可以做备份,所以建议你用前一种。
因为考勤一般要访问的都是本月的数据。应当分成历史的表和本月表.这样就可以提高查询的效率了。