我有这张桌子“a”:
ID | NUMORD | ITEMID
---------------------
1 | 1 | 4
2 | 1 | 5
3 | 1 | 6
而不是这张表“b”
ID | NUMORD | ITEMID | QT
--------------------------
1 | 1 | 4 | 2
2 | 1 | 4 | 1
3 | 1 | 5 | 3
4 | 1 | 6 | 1
5 | 1 | 5 | 2
我需要这样的结果:
ID | NUMORD | ITEMID | QT
--------------------------
1 | 1 | 4 | 3
2 | 1 | 5 | 5
3 | 1 | 6 | 1
如果我在第一个表上按NUMORD分组然后按SUM,则显示SUM OF“QT”。 我怎么能得到我的结果? 感谢
答案 0 :(得分:0)
首先你想要一些按NUMORD和ITEMID:
SELECT NUMORD,ITEMID, SUM(QT)
FROM tableB
GROUP BY NUMORD,ITEMID
然后使用JOIN:
SELECT a.ID, b.NUMORD, b.ITEMID, b.QT
FROM tableA a
INNER JOIN (
SELECT NUMORD,ITEMID, SUM(QT)
FROM tableB
GROUP BY NUMORD,ITEMID
) AS b ON b.NUMORD = a.NUMORD AND b.ITEMID = a.ITEMID
NOTA:您的数据库架构似乎有点奇怪为什么2个表的列几乎相同?