不好意思,上面发错了table1
id 部门 年 月 数量
0000010000 beij 2006 4 20
0000010000 beij 2006 6 90
0000020000 beij 2006 4 20
0000020000 beij 2006 6 20
0000020000 BJ 2006 4 800
0000020000 BJ 2006 5 10table2
id 部门 年 月 数量
0000010000 beij 2006 6 14
0000020000 beij 2006 6 11
0000020000 BJ 2006 4 410要得到这样的结果:
id 部门 年 月 数量
0000010000 beij 2006 4 20
0000010000 beij 2006 6 76
0000020000 beij 2006 4 20
0000020000 beij 2006 6 9
0000020000 BJ 2006 4 390
0000020000 BJ 2006 5 10就是table1-table2中相同的记录的数量
id 部门 年 月 数量
0000010000 beij 2006 4 20
0000010000 beij 2006 6 90
0000020000 beij 2006 4 20
0000020000 beij 2006 6 20
0000020000 BJ 2006 4 800
0000020000 BJ 2006 5 10table2
id 部门 年 月 数量
0000010000 beij 2006 6 14
0000020000 beij 2006 6 11
0000020000 BJ 2006 4 410要得到这样的结果:
id 部门 年 月 数量
0000010000 beij 2006 4 20
0000010000 beij 2006 6 76
0000020000 beij 2006 4 20
0000020000 beij 2006 6 9
0000020000 BJ 2006 4 390
0000020000 BJ 2006 5 10就是table1-table2中相同的记录的数量
from table1 a left join table2 b on a.id = b.id and a.部门 = b.部门 and a.年 = b.年 and a.月 = b.月???
UNION
SELECT id,部门,年,月,-数量 FROM table2) x
GROUP BY ID,部门,年,月还有种常规写法,就是二表写连接,我想肯定有人在写了,就不写出来了.