VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)

VB爱好者乐园(VBGood)

 找回密码
 立即注册
搜索
查看: 1346|回复: 2

[求助] 求助想在MDB数据库里做个汇总表

[复制链接]
发表于 2021-4-22 00:39:46 | 显示全部楼层 |阅读模式
现有一个MDB数据库(variation.mdb),内有4个表,前三个表的格式完全一样,第四个表想做一个汇总,并且需要有些计算。

具体操作如下:
1、    将表1(表名为variation)原封不动的复制到表4(表名为variation_4),即图中表1蓝色框里的内容全部复制到表4蓝色框里;
2、    将表2(表名为variation_2)里的每一条记录在和表4里每一条的前9栏进行比对,如果《管芯编号》、《测试组别》、《测试项目》、《管脚号》、《测试值下限》、《测试值上限》、《单位》完全一致的话,将表2里的《测试值》填写到表4对应条目的《测试值-2》位置, 并且计算《测试值》和《测试值-2》之间的差值(《测试值》-《测试值-2》),得出的差值填写到表4的《差值-2》栏中;
3、    (类似上一条),将表3(表名为variation_3)里的每一条记录在和表4里每一条的前9栏进行比对,如果《管芯编号》、《测试组别》、《测试项目》、《管脚号》、《测试值下限》、《测试值上限》、《单位》完全一致的话,将表3里的《测试值》填写到表4对应条目的《测试值-3》位置, 并且计算《测试值》和《测试值-3》之间的差值(《测试值》-《测试值-3》),得出的差值填写到表4的《差值-3》栏中;
4、    如果表2为空、表3不为空的话,仅进行第1、3步;如果表2不为空、表3为空的话,仅进行第1、2步;
5、    如果表2或表3的每一条在进行与表4的每一条的前9栏进行比对,没有匹配的话,则进行下一条的比对,不需要做出提示。

敬请路过的大神和版主告知这段语句如何撰写,在这里先行拜谢。

另外,曾经出现过表1、表2、表3各有400万条以上的数据的极限情况,那个时候variation.mdb文件已经达到1.3G左右,麻烦在编写这段程序时要考虑比对效率问题。

多谢多谢。

variation.rar

71.41 KB, 下载次数: 188

数据库文件

图片说明.rar

30.72 KB, 下载次数: 188

图片说明

发表于 2021-5-18 19:13:07 | 显示全部楼层
进来学习一下。
回复 支持 反对

使用道具 举报

发表于 2021-8-2 20:39:20 | 显示全部楼层
本帖最后由 东海边上 于 2021-8-2 21:03 编辑

写几句SQL语句供你参考

1、 delete from tb4
2、Insert Into tb4 (f1,f2,f3) select f1,f2,f3 from tb1
3、update tb4 inner join tb2 on tb4.f1=tb2.f1 and tb4.f2=tb2.f2 and tb4.f3=tb2.f3  set tb4.[测试值-2]=tb2.[测试值]
4、update tb4 set [差值-2]=[测试值]-[测试值-2]
5、update tb4 inner join tb3 on tb4.f1=tb3.f1 and tb4.f2=tb3.f2 and tb4.f3=tb3.f3  set tb4.[测试值-3]=tb3.[测试值]
6、update tb4 set [差值-3]=[测试值]-[测试值-3]
上面tb 表示表  ,f1 表示 字段 我只是关联了 3个字段,你9个字段 就 继续 tb4.f4=tb2.f4  继续往下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

文字版|手机版|小黑屋|VBGood  

GMT+8, 2021-9-23 01:24

VB爱好者乐园(VBGood)
快速回复 返回顶部 返回列表