| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
ADSL如何秒变专线,公网IP盒子了解一下千里之行 始于足下
共有 611 人关注过本帖
标题:续---数据库内数据统计问题
只看楼主 加入收藏
ictest
Rank: 2
等 级:论坛游民
帖 子:256
专家分:97
注 册:2010-2-17
结帖率:74.07%
  已结贴   问题点数:10  回复次数:10   
续---数据库内数据统计问题
目前我已经用如下语句分别得到不同表单,请问如何能合并成一个总的表?
1、工作日加班
程序代码:
  Adodc2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path & "\考勤.mdb;Persist Security Info=False"
  Adodc2.RecordSource = "SELECT 序号,姓名,SUM(加班小计) as 工作日加班 FROM 考勤 WHERE (right(星期,1)<>'六' and right(星期,1)<>'日') GROUP BY 序号,姓名"
  Adodc2.Refresh
  Set DataGrid2.DataSource = Adodc2



2、双休日加班
  Adodc2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path & "\考勤.mdb;Persist Security Info=False"
  Adodc2.RecordSource = "SELECT 序号,姓名,SUM(加班小计) as 双休加班 FROM 考勤 WHERE right(星期,1)='六' or right(星期,1)='日' GROUP BY 序号,姓名"
  Adodc2.Refresh
  Set DataGrid2.DataSource = Adodc2



3、统计表
  Adodc2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path & "\考勤.mdb;Persist Security Info=False"
  Adodc2.RecordSource = "SELECT 序号,姓名,SUM(加班小计) as 加班小计,SUM(休假) as 休假,SUM(早班时间) as 早班时间,SUM(中班时间) as 中班时间,SUM(夜班时间) as 夜班时间 FROM 考勤 GROUP BY 序号,姓名"
  Adodc2.Refresh
  Set DataGrid2.DataSource = Adodc2




现在,想把这几张表合成一张表,如下图所示(不好意思,是画图拼接出来的):


请问,用什么语句,怎样写法,才能合并出上面这张表呢?

或者说,如何将以上的语句合并写,直接生成上面这张表呢?


恳求版主和路过的坛友在百忙中抽出点时间帮帮我,谢谢!

[此贴子已经被作者于2019-2-12 10:31编辑过]

附件: 您没有浏览附件的权限,请 登录注册
搜索更多相关主题的帖子: 考勤 序号 姓名 SUM 时间 
2019-02-12 10:16
ictest
Rank: 2
等 级:论坛游民
帖 子:256
专家分:97
注 册:2010-2-17
  得分:0 
恳求版主和路过的坛友在百忙中抽出点时间帮帮我,谢谢!
2019-02-12 16:23
wmf2014
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:178
帖 子:1789
专家分:10030
注 册:2014-12-6
  得分:1 
INNER JOIN 连接多表

能编个毛线衣吗?
2019-02-12 17:15
ictest
Rank: 2
等 级:论坛游民
帖 子:256
专家分:97
注 册:2010-2-17
  得分:0 
以下是引用wmf2014在2019-2-12 17:15:31的发言:

 INNER JOIN 连接多表

能麻烦您把语句帮忙写一下吗?刚接触数据库不久,以上的语句还是废了九牛二虎之力才搞出来的。谢谢了谢谢了。
2019-02-12 19:10
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:254
帖 子:4419
专家分:27177
注 册:2008-10-15
  得分:1 
看了一下你的数据是 MDB 格式的。
因这个电脑上没有相关软件,说个思路吧!

在 MDB 里存在 一种对象,叫查询 。
你把你前面几项的查询命令 做成查询 。
然后 再 联合查询 这几个查询 得出结果,这条查询命令写在程序里得到结果,但可以在 access 再写查询检查命令是否正确。
写这个命令,可以使用 access 的向导来做。

授人于鱼,不如授人于渔
早已停用QQ了
2019-02-13 08:30
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:98
帖 子:878
专家分:4612
注 册:2016-5-10
  得分:1 
你的三个表使用的是同一个数据表,而且工作日加班、双休日加班的条件语句有冲突,因此想使用原来的数据表生成一个表恐怕不可能。
既然能够生成 工作日加班、双休日加班 及 统计表,将生成的这三个表合并成一个数据表,就解决问题了。
2019-02-13 09:01
wmf2014
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:178
帖 子:1789
专家分:10030
注 册:2014-12-6
  得分:0 
如果不涉隐私的话,可以提供你的数据库试试(实在不愿模拟一个类似数据库,还要输入一大堆模拟数据),应该可以完成。针对6楼疑问,我觉得可以用子查询解决(或者叫查询嵌套)。

能编个毛线衣吗?
2019-02-13 09:11
ictest
Rank: 2
等 级:论坛游民
帖 子:256
专家分:97
注 册:2010-2-17
  得分:0 
以下是引用wmf2014在2019-2-13 09:11:12的发言:

如果不涉隐私的话,可以提供你的数据库试试(实在不愿模拟一个类似数据库,还要输入一大堆模拟数据),应该可以完成。针对6楼疑问,我觉得可以用子查询解决(或者叫查询嵌套)。


我的程序和数据库在这里,请移步至此处。
附件: 您没有浏览附件的权限,请 登录注册
2019-02-13 14:34
wmf2014
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:178
帖 子:1789
专家分:10030
注 册:2014-12-6
  得分:0 
回复 8楼 ictest
那个里面的mdb没有数据

能编个毛线衣吗?
2019-02-13 15:07
ictest
Rank: 2
等 级:论坛游民
帖 子:256
专家分:97
注 册:2010-2-17
  得分:0 
回复 9楼 wmf2014
嗯,运行程序,第一个按钮就是把数据导入mdb。另外mdb是之前做的,里面字段类型可能有错误,加班小计,早班时间等字段应该从文本改成双精度数字。
2019-02-13 15:36







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020436 second(s), 8 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved