遇到此类问题考虑的方向共有两种:
1。自然连结(术语叫:两个关系的笛卡尔积)
将你的现在的表与一个日期表进行广义笛卡尔积,知道吧?就是两个表的乘法,结果是列为两个表列的总和,行为两个表的行乘积。
如:A表
aa ab ac
1 2 3
4 5 6
B表
ba bb bc
1 5 9
3 2 8
AB的结果就是:
aa ab ac ba bb bc
1 2 3 1 5 9
1 2 3 3 2 8
4 5 6 1 5 9
4 5 6 3 2 8
明白吗?
然后与现有表进行相减!A-B所得结果就是A表中有而B表中没有的记录。这样可以解决你的类似问题。
2。还有可以用程序实现:
如:查某一天的员工不在信息时,可以在考勤表中该天的所以到的员工,而用员工表相差实现。如:select from 员工表where 姓名 not in (select 姓名 from 考勤表 where 日期=当天),当然也可以实现两表相连结后结果。
至于查总缺的次数,可以先查该月的总出勤次数就行了!这个我想你不会不会吧?用一个recordcount就行了!
我所说的程序就在这里,一个月只能查出缺勤次数,而缺勤日期,要用一个程序去频繁调用数据(可能是表或视图)去计算。数据库可能效率极低!但总可以实现的!
在一些应用程序中,如果您在文本框中输入的文本超过了该字段的最大字符数,则您可能会看到文本被截断并且字符数改为(50字)。这通常是为了确保数据库中的数据和表格的一致性。如果发现这种问题,请尝试缩短您输入的文本长度,并确保它小于文本框所允许的最大字符数。然后,重新保存您的考勤表格并查看是否出现相同的问题。
1新建WPS文档,点击插入-插入表格,适当设置表格行列数和样式。
2输入表格名称、日期、表格属性和制表人姓名。
3录入数据。
动态考勤表保存上个月的考勤,那么可以直接把这个动态的考勤表设置为静态的考试表,那么他这个时候也就是不会自动更新,因为动态考勤表它是会自动生成下个月的表格,所以也就是设置为静态的考勤表,就可以保存上个月的考勤。
附件是我2009年做的,给你做个参考。
说实话用Excel做这种考勤比较痛苦,因为数据要进行多次判断。
我是用Acess做的宏自动导入每月数据(和你的原数据类似),在Acess中处理,然后将结果导出至Excel。
如果你懂Access,或者SQL等数据库的话,可以尝试以下思路:
1
由于每月日期不同,结果表的列肯定不同。用Cross-Tab查询,日期为列,并将结果导入到一个结果表。每次运行Access的宏会先删除这个表,并从Cross-Table查询重新建立。
2
员工号有效性判断。有些访客也打卡,要把他们剔除!@#¥#!有些卡编号有误,比如前面多个空格,用Trim搞定。
2
员工可能多次打卡,进取first,出取last
(Acess自带函数)
3
多班次判断。比较麻烦的是跨日班次,其他的都比较简单。我是分多班次进行单个分析,然后再用Union将结果统一至一个query
4
剩下就是连接人事DB导出一些部门,姓名的信息,设计一些打印报表。
5
结果表的内容复制到Windows
clipboard。然后通过Excel的宏从clipboard中导出数据并处理一些格式。如果有什么问题可以联系我赛客生活小雅。
考勤表制作表格的方法如下。
1、点击电脑桌面上的excel表格。
2、在第一行输入考勤表的表头内容。
3、在第二行输入考勤的具体的内容:姓名,迟到、请假、旷工和核对签字。
4、用鼠标选中需要调节行高的区域。
5、右击鼠标,找到行高。
6、输入合适的行高,然后点击确定。
7、对表格加上框线。
8、把表头文字进行居中,并且文字设置成加粗就可以了。上面就是带来的使用excel制作考勤表的详细教程,你们都学会了吗。
以上就是关于问,SQL关于查询考勤系统.全部的内容,包括:问,SQL关于查询考勤系统.、我的考勤表为什么编辑完了按了保存之后再打开考勤表它的文字变成、如何用电脑制作一个考勤表等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)