Office中国论坛/Access中国论坛

标题: 这样的追加查询怎么追加啊? [打印本页]

作者: cangqiong    时间: 2007-9-6 10:40
标题: 这样的追加查询怎么追加啊?
表中有3_开头的表 想追加到"2_格式总表"中.但是有个要求....
1.   "2_格式总表"中前四个字段是关键字.这四个字段是唯一值
2.   3_开头的8个表.也是前四个字段是唯一值.   这个8表的前四个字段在"2_格式总表"肯定会有
3.    想把这3_开头的8个表按关键字追加到"2_格式总表"中

求求高手帮帮忙.这个问题已经困绕我很久了!!
作者: cangqiong    时间: 2007-9-6 11:16
1.或者用什么方法.以 "2_格式总表"中的字段数....把8个表的数对应该着..填入2_格式总表"中
2.实绩上我最终要的是..以"2_格式总表"表导入EXCEL中....
3.实绩上我试过,先把2_格式总表"表导入EXCEL中....在把8个表分别按照循环以前四个字段为唯一值导入EXCEL中..但是速度太慢了..导一个表就要N个时间.要导完8个表...估计头发都白了..
请大家.帮帮忙..想一想.到底怎么做才简单而且速度快.
作者: liwen    时间: 2007-9-6 12:39
使用联合查询,你想怎么联合都成
作者: cangqiong    时间: 2007-9-6 12:48
那你帮我联合一下啊..帮帮忙啊
作者: liwen    时间: 2007-9-6 13:07
如果字段相同:可直接用
select * from 表1 union select * from 表2 union select * from 表3
。。。。。
如字段不同将“*”替换为相应的字段名 [字段1],[字段2],[字段3],[字段4]
作者: cangqiong    时间: 2007-9-6 13:19
谢谢.帮我做一下吗?有附件..
在附件中做一下好吗?
作者: cangqiong    时间: 2007-9-6 13:20
附件中.是正式的表...
表名 字段 ...格式....都是相同的
作者: liwen    时间: 2007-9-6 13:49
没有看你的库,先给你一个选择查询:

SELECT [2_格式总表].默认日期1, [2_格式总表].部门代码, [2_格式总表].生产工号, [3_格式总表_ASSY].ASSY, [3_格式总表_ASSY1].ASSY1, [3_格式总表_纯除外].纯除外, [3_格式总表_计划数量].计划数量, [3_格式总表_捆包].捆包, [3_格式总表_配品].配品, [3_格式总表_生产数量].生产数量, [3_格式总表_组装].组装
FROM (((((((2_格式总表 LEFT JOIN 3_格式总表_ASSY ON ([2_格式总表].默认日期1 = [3_格式总表_ASSY].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_ASSY].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_ASSY].生产工号) AND ([2_格式总表].型号 = [3_格式总表_ASSY].型号)) LEFT JOIN 3_格式总表_ASSY1 ON ([2_格式总表].默认日期1 = [3_格式总表_ASSY1].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_ASSY1].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_ASSY1].生产工号) AND ([2_格式总表].型号 = [3_格式总表_ASSY1].型号)) LEFT JOIN 3_格式总表_纯除外 ON ([2_格式总表].默认日期1 = [3_格式总表_纯除外].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_纯除外].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_纯除外].生产工号) AND ([2_格式总表].型号 = [3_格式总表_纯除外].型号)) LEFT JOIN 3_格式总表_计划数量 ON ([2_格式总表].默认日期1 = [3_格式总表_计划数量].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_计划数量].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_计划数量].生产工号) AND ([2_格式总表].型号 = [3_格式总表_计划数量].型号)) LEFT JOIN 3_格式总表_捆包 ON ([2_格式总表].默认日期1 = [3_格式总表_捆包].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_捆包].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_捆包].生产工号) AND ([2_格式总表].型号 = [3_格式总表_捆包].型号)) LEFT JOIN 3_格式总表_配品 ON ([2_格式总表].默认日期1 = [3_格式总表_配品].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_配品].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_配品].生产工号) AND ([2_格式总表].型号 = [3_格式总表_配品].型号)) LEFT JOIN 3_格式总表_生产数量 ON ([2_格式总表].默认日期1 = [3_格式总表_生产数量].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_生产数量].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_生产数量].生产工号) AND ([2_格式总表].型号 = [3_格式总表_生产数量].型号)) LEFT JOIN 3_格式总表_组装 ON ([2_格式总表].默认日期1 = [3_格式总表_组装].默认日期1) AND ([2_格式总表].部门代码 = [3_格式总表_组装].部门代码) AND ([2_格式总表].生产工号 = [3_格式总表_组装].生产工号) AND ([2_格式总表].型号 = [3_格式总表_组装].型号);
作者: liwen    时间: 2007-9-6 13:56
如你要更新到[2_格式总表],你可试着将这个查询更改为更新查询(应该不是你所说的追加查询,就是因为你说是追加查询,在没看你的库之前,我认为使用联合查询就够了)
作者: hosam    时间: 2007-9-12 14:32
试一试!!!!!!!!!!!!!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3