Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

合并表操作的问题

梁枫  发表于:2013-11-21 11:44:54  
复制

请问我想实现以下结果该如何操作,例如:

A表

编号      名称      数量

001       dddd       1

002       eeee       3

003       ffff          5

B表

编号      名称      数量

001       dddd       8

005       mmm       6

007       aaaaa       4

C表

编号      名称      数量

002       eeee       10

005       mmm       6

003       ffff          12

结果表

编号      名称     A表 数量       B表 数量      C表 数量

001       dddd       1                 8

002       eeee       3                                   10

003       ffff          5                                   12

005       mmm                          6                6

007       aaaaa                          4

 

Top
宏鹏 发表于:2013-11-21 13:23:39
先用联合查询合并为一个表,再基于这个查询,根据编号和名称分组汇总数量

西出阳关无故人 发表于:2013-11-21 13:48:08

SELECT  编号,名称,SUM(A表数量) AS A数量,sum(B表数量) as B数量,sum(C表数量) as C数量

from

(select 编号,名称,数量 as A表数量,0 as B表数量,0 as C表数量 from A表

union

select 编号,名称,0 as A表数量,数量 as B表数量,0 as C表数量 from B表

union

select 编号,名称,0 as A表数量,0 as B表数量,数量 as C表数量 from C表)

group by  编号,名称



梁枫 发表于:2013-11-21 16:56:40
谢谢帮助,西出兄弟的代码我也操作了一遍,可以实现,我还想再问下,假如有5张或者更多表,有没有更快捷的方法。其实这个问题主要是用于合并产品BOM单,我现在都是用excel中的VLOOKUP函数操作,感觉这2种工作量都差不多,

总记录:3篇  页次:1/1 9 1 :