access中如何针对不同结构的几个表就相同字段进行合并查询?

各位大侠,初学access,现在面临一个大问题,请问如何解决?
准备建立一个有关车辆每日运行状况的查询,共涉及五个表:
值班车辆表、零星用车表、搬家车辆表、待派车辆表
每个表中均有“日期”、“车辆自编号”、“工作内容”及“备注”四个字段,其他字段不完全相同。
另外还有一个“车辆基础数据表”,包含“车辆自编号”、“车型”字段(这个表是固定死的,不会变动)
注:零星用车表因为是统计全月情况的,所以车辆自编号不是唯一,其他表中车辆自编号均为唯一。
在一天中,某一台车辆只可能出现在“值班车辆表”、“零星用车表”、“搬家车辆表”、“待派车辆表”中的一个。
请问:如何建立一个车辆每日运行状况的查询,可以包含“日期”、“车辆自编号”、“车型”、“工作内容”及“备注”?

请点拨下思路!多谢了!!!

个人考虑应该是设法合并“值班车辆表”、“零星用车表”、“搬家车辆表”、“待派车辆表”的数据,再结合“车辆基础数据表”进行查询。请指教!

再度补充:wangzhiqing999您好,我的表述有误。如果值班车辆表没有日期一列(值班车辆变化很少,想直接引用),如何在车辆每日运行状况引用其数据并自动添加对应日期呢?

楼主这个“合并“值班车辆表”、“零星用车表”、“搬家车辆表”、“待派车辆表”的数据”要求, 一般使用 UNION 这个 关键字,就可以解决问题。

也就是:

SELECT “日期”,“车辆自编号”,“工作内容”,“备注” FROM “值班车辆表”
UNION ALL
SELECT “日期”,“车辆自编号”,“工作内容”,“备注” FROM “零星车辆表”
UNION ALL
SELECT “日期”,“车辆自编号”,“工作内容”,“备注” FROM “搬家车辆表”
UNION ALL
SELECT “日期”,“车辆自编号”,“工作内容”,“备注” FROM “待派车辆表”

UNION ALL 关键字, 把多个 SQL 语句的执行结果,组合起来。会包含重复的信息。

但是楼主已经说了“在一天中,某一台车辆只可能出现在“值班车辆表”、“零星用车表”、“搬家车辆表”、“待派车辆表”中的一个。”

所以, 这种情况下, 用 UNION ALL 应该是没问题的。

后面的 “再结合“车辆基础数据表”进行查询”

就是把上面的一堆的 UNION ALL 之后的数据,
与 “车辆基础数据表” 关联

也就是

SELECT
AfterUnionAll.“日期”,
AfterUnionAll.“车辆自编号”,
车辆基础数据表.车型,
AfterUnionAll.“工作内容”,
AfterUnionAll.“备注”
FROM
“车辆基础数据表”
(“上面一堆表的 UNION ALL ”) AS AfterUnionAll
WHERE
“车辆基础数据表”.车辆自编号 = AfterUnionAll.车辆自编号
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-08-26
不知道你的结果到底要什么。如果要简单合并,直接用 UNION ALL 语句就可以了。

select 日期,车辆自编号,工作内容,备注 from 值班车辆表 union all select 日期,车辆自编号,工作内容,备注 from 零星用车表 union all select 日期,车辆自编号,工作内容,备注 from 搬家车辆表 union all select 日期,车辆自编号,工作内容,备注 from 待派车辆表
第2个回答  2010-09-08
不知道你表结构
借书次数TOP排名,取前COUNT(*)的百分之十。
书,次数,时间字段看受欢迎程序

access中如何针对不同结构的几个表就相同字段进行合并查询?
UNION ALL 关键字, 把多个 SQL 语句的执行结果,组合起来。会包含重复的信息。但是楼主已经说了“在一天中,某一台车辆只可能出现在“值班车辆表”、“零星用车表”、“搬家车辆表”、“待派车辆表”中的一个。”所以, 这种情况下, 用 UNION ALL 应该是没问题的。后面的 “再结合“车辆基础数据...

怎样在access中把多张格式一样的表合并成一个总表
一、横向合并多张表,前提是多表之间要有能够关联的字段,直接用交互查询就可以了。二、纵向合并要求多张表的字段的名称、字段个数、字段顺序、属性完全一样才能执行,在有了这个前提后,SQL查询语句写法如下:SELECT 表1.FROM 表1;UNION SELECT 表2.FROM 表2;UNION SELECT 表3.FROM 表3 ...UNION...

请问:access 查询: 如何将几个表中相同字段的值 相加
先把两个表union起来再求和。注意这里不能用inner join, left join或者right join,否则会将其中一个表独有的记录遗漏,比如说A表只有张三李四,而B表只有王五,任何一种join都会遗漏至少一个记录,所以先union再求和才正确。select name, sum(字段1), sum(字段2) from (select 字段1,字段2 from ...

access 多表数据匹配时碰到匹配条件完全一样的两行怎么办
回答:表一出货表中, 一次出货操作只应该有一条记录, 这在任何仓储管理软件中都是唯一的. 如果一次出货出现了记录重复, 你不应该在报表输出时怎么弥补, 而应该考虑解决为什么一次出货会有记录重复: 是在数据写入时有流程错误, 还是写入代码有问题

Access 中如何整合不同的表中的同类型数据?
你可先设计一张表,它的字段包含姓名、性别、密码,然后用追加查询,分别选择这三张表的对应字段追加到设计的新表中对应的字段中去。

请问如何将access两表合并,有相同字段,怎么操作
1、点击【在设计视图中创建查询】,打开后在【显示表】窗口添加你这两个表,然后点【关闭】按钮退出【显示表】。2、在上面的快捷菜单中选择查询类型为【生成表查询】,在弹出的窗口中输入(合并后的)表名称。然后点【确定】退出。3、从前面的表中找到两个表都有的相同字段,在该字段上按下鼠标左键...

如何将两个表的数据合并到一张表中?
1、打开Access软件,新建两个数据表,注意两个数据表的字段需要相同,数据不同,如下图所示 2、然后点击顶部的创建菜单,选择下面的查询设计选项,如下图所示 3、在弹出的显示表界面中选择第二个数据表,如下图所示,接下来会将选择的表合并到第一个表中 4、回到查询设计主界面,我们看到刚才选择的表...

Access同一数据库两张表结构相同,记录如何合并?
1、打开access工具,可以新建表复制数据进去,或者你通过excel导入进去,尽量不要用链接表,因为这样对原有表覆盖,这样是不行的。我们可以将门诊药品使用情况跟住院药品使用情况数据导入。2、导入好表,就可以新建查询,我们可以显示门诊药品使用情况添加进去。3、然后在查询点击追加查询。就会提示你要追加...

excel或access中如何将两个表按照一个字段合成一个表
1.确定基础表和关键字段列 确定哪个表格作为基础表,将其他表格内容匹配过来;并确定哪一列的字段是几个表格都有可以作为关键字段的。如下面例子,表二的“姓名”列可以选定作为合并表格的关键字段。2.利用vlookup函数匹配合并表格 VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])参...

如何在Access里面将多个具有相同字段的表合并到一个表中?
数据跟你上边一样,两个字段我都设置的数字型 语句如下 select t.id,sum(switch(t.折扣=3,1,true,0)) as [折扣3折],sum(switch(t.折扣=4,1,true,0)) as [折扣4折],sum(switch(t.折扣=5,1,true,0)) as [折扣5折],sum(switch(t.折扣=6,1,true,0)) as [折扣6折]from(...

相似回答