access数据库中如何多表查询

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了access数据库中如何多表查询相关的知识,希望对你有一定的参考价值。

表A正式员工 字段 姓名 组
表B实习员工 字段 姓名 组
表C数据表 字段 工作任务 负责人 完成期限 完成日期...
表D数据表 字段 失败任务 负责人 最后期限 完成日期...

如何查询 组为1 的正式和非正式员工 在表C或者表D中未到完成日期的未完成任务?

1,打开access,点击创建,点击查询设计。
2,这时候打开了查询表,在跳出的显示表中双击要用到的表。
3,双击要用到的字段,然后就会放到下方的框框里,如果要进行计算,就点击菜单栏的汇总,然后在框框里就会出现group by,旁边的倒三角有很多计算语言,具体意义建议上网查询,然后点击保存,更改表名,点击菜单栏的运行就可以了。
参考技术A 你问题的意思是把两个查询合在一起?~~
union 就是把查询结果合并 自动去重
select 姓名 from 表A where 组='1' and
union
(
select 姓名 from 表B where 组='1'
) (用法忘的差不多了 不知道要不要在where里面)

表CD那个问题同理由
select * from 表C where 完成日期=NULL (没有完成日期就是没完成对吧~~~)
要看你数据库表怎么设计~~~~

还有一种
多表查询就是把表连起来
左连接~右连接~自然连接 (貌似不是你要的)

access你问的是图形操作? 直接点就是了..........下面框架中有条件可以自己打
上面的图~~~~选你要的字段追问

这个是一个查询。就是用一条语句可以实现吗。

追答

组为1 的正式和非正式员工
select a.姓名 as 正式员工 b.姓名 as 非正式会员
from 表A ,表B
where 表A.组 =表B.组 and 表A.组='1' (自己加个去重,我忘记了)

在表C或者表D中未到完成日期的未完成任务?
select C.工作任务,D.失败任务
from 表C,表D
where 表C.完成日期=NULL and 表D.完成日期=NULL

这样很多重复的...........

我没办法了
用连接的话~~~毕竟很久前学的~~~~忘光了 貌似不行
因为你的表之间没有外键.........没有关系

本回答被提问者采纳
参考技术B 用筛选方案
我不是很懂
另外你百度搜索吧

跨库查询和多表查询

介绍如何使用MySQL进行跨库查询和多表查询(几张表的信息纵向连接在一张表中)

information_schema

MySQL内部使用的数据库 information_schema 和 mysql
information_schema库保存了当前使用的MySQL的所有数据库,表信息,将这些信息使用一个库来管理等。

TABLES表中保存了所有的表信息
TABLES表
TABLE_SCHEMA字段:数据库名 TABLE_NAME字段:表名
根据数据库名查询表名 SELECT      TABLE_NAME FROM      information_schema.`TABLES` WHERE      TABLE_SCHEMA = "mysurvey_log"
结果显示:

UNION

多表查询,最后结果显示在一张表中
查询auto_log_2016_11,auto_log_2016_12,auto_log_2017_01, auto_log_2017_02表中的日志信息 SELECT   * FROM   auto_log_2016_11 UNION SELECT   * FROM   auto_log_2016_12 UNION SELECT   * FROM   auto_log_2017_01 UNION SELECT   * FROM   auto_log_2017_02
结果:(这几张表的信息显示在一张表中)

以上是关于access数据库中如何多表查询的主要内容,如果未能解决你的问题,请参考以下文章

关于access sql查询多表的问题

ACCESS数据库多表查询?

Access select where 数据库查询 多表联合查询

Access数据库中多表联合查询,并显示记录

Access的Left join多表联合查询

vb SQL多表联合查询问题(Access数据库表)