设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 8411|回复: 17
打印 上一主题 下一主题

[查询] 跪求多表合并SQL代码

[复制链接]
1#
发表于 2011-6-20 16:14:32 | 显示全部楼层
yiyucoco 发表于 2011-6-20 15:53
我用的是ACCESS 2007,现在要把两个表合并,具体如下:
表1: 产品种类, 产品名称, 客户名称, 目的国家, 已出货 ...

1、做以下联合查询:
Select 产品种类,产品型号,客户名称, 目的国家, 已出货数量, 0 as 预测数量 from 表1
Union All
Select 产品种类,产品型号,客户名称, "" as 目的国家, 0 as 已出货数量, 预测数量 from 表2
2、以以上查询为基础进行分组查询后做生成表查询即可。
2#
发表于 2011-6-20 17:04:01 | 显示全部楼层
本帖最后由 todaynew 于 2011-6-20 17:05 编辑
yiyucoco 发表于 2011-6-20 16:52
第1步已经完成.但分组查询怎么做?


1、用“使用向导创建查询”---将该联合查询所有字段导入,打开查询设计视图;
2、点击∑符号做分组查询,在第三行你能看见当前均为“分组”。将“已出货数量”和“预测数量”的分组通过下拉菜单改变为“总计”;
3、保持查询的设计视图,点击主菜单--查询--生成表查询,根据提示建立一个生成表查询,关闭查询设计视图;
4、点击该生成表查询,建立一个新表。
3#
发表于 2011-6-20 18:01:21 | 显示全部楼层
本帖最后由 todaynew 于 2011-6-20 18:03 编辑
yiyucoco 发表于 2011-6-20 17:22
不对.如果取最大值的话,当产品种类和产品名称一样,但目的国家有二条记录的时候,就只有一条记录了.我的办法不 ...


把联合查询稍该一下即可:
Select 产品种类,产品型号,客户名称, 目的国家, 已出货数量, 0 as 预测数量 from 表1
Union All
Select 产品种类,产品型号,客户名称, nz(Dlookup("目的国家","表1","产品种类='" & [产品种类] & "'  and 产品型号='" & [产品型号] & "' and 客户名称='" & [客户名称] & "'"),"") as 目的国家, 0 as 已出货数量, 预测数量 from 表2
4#
发表于 2011-6-21 12:07:36 | 显示全部楼层
本帖最后由 todaynew 于 2011-6-21 12:13 编辑
yiyucoco 发表于 2011-6-21 09:31
运算过了,完全可用.不过因为是毫无根基的初学者,所以有些地方还是不明白,不要笑我啊~
Nz函数的语法是 Nz(v ...


1、Dlookup函数的第三个参数的使用和理解可请roych版主做重点培训,在此不赘述;

2、关于目的国家于Dlookup结果不对应的问题:需预先在表2中增加“目的国家”字段,并按实际补齐数据,同时联合查询还原写为:
Select 产品种类,产品型号,客户名称, 目的国家, 已出货数量, 0 as 预测数量 from 表1
Union All
Select 产品种类,产品型号,客户名称, 目的国家, 0 as 已出货数量, 预测数量 from 表2

3、关于取某种条件下的最大值问题:与Dlookup功能相近似的有一组叫做域函数的函数,包括Dmax、Dmin、DLast、Dfirst等,可根据需要进行选用,具体用法可在系统中查询“域函数”的说明。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-11 20:16 , Processed in 0.102142 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表