我想弄明白在特定情況下的group by子句:我加入了兩張應該有相同的美元金額爲每張發票,所以我試圖作出查詢以確認沒有差異。這裏是表,查詢和結果:缺少數據與羣和和
Table A:
Order_Number | Order_Number_Line | Amount
1 | 1 | 80
1 | 2 | 20
1 | 3 | 30
1 | 4 | 70
Table B
Order_Number | Order_Number_Line | Invoice_ID | Invoice_Line_Number | Amount
1 | 1 | 1234 | 1 | 20
1 | 2 | 1234 | 2 | 5
1 | 3 | 1234 | 3 | 10
1 | 4 | 1234 | 4 | 25
1 | 1 | 1234 | 1 | 35
1 | 2 | 1234 | 2 | 7
1 | 3 | 1234 | 3 | 15
1 | 4 | 1234 | 4 | 10
1 | 1 | 1234 | 1 | 25
1 | 2 | 1234 | 2 | 8
1 | 3 | 1234 | 3 | 5
1 | 4 | 1234 | 4 | 35
Select A.Order_Number, A.Amount, B.Amount
From Table_A as A
Left Join (Select Order_Number, Amount From Table_B) as B
On A.Order_Number = B.Order_Number
Order_Number | Amount_Table_A | Amount_Table_B
01 | 80 | 20
01 | 80 | 5
01 | 80 | 10
01 | 80 | 25
01 | 80 | 35
01 | 80 | 7
01 | 80 | 15
01 | 80 | 10
01 | 80 | 25
01 | 80 | 8
01 | 80 | 5
01 | 80 | 35
01 | 20 | 20
01 | 20 | 5
01 | 20 | 10
01 | 20 | 25
01 | 20 | 35
01 | 20 | 7
01 | 20 | 15
01 | 20 | 10
01 | 20 | 25
01 | 20 | 8
01 | 20 | 5
01 | 20 | 35
01 | 30 | 20
01 | 30 | 5
01 | 30 | 10
01 | 30 | 25
01 | 30 | 35
01 | 30 | 7
01 | 30 | 15
01 | 30 | 10
01 | 30 | 25
01 | 30 | 8
01 | 30 | 5
01 | 30 | 35
01 | 70 | 20
01 | 70 | 5
01 | 70 | 10
01 | 70 | 25
01 | 70 | 35
01 | 70 | 7
01 | 70 | 15
01 | 70 | 10
01 | 70 | 25
01 | 70 | 8
01 | 70 | 5
01 | 70 | 35
我試着用分組,但是隻得到了每個表的第一個量的記錄:
Select A.Order_Number, A.Amount, B.Amount
From Table_A as A
Left Join (Select Order_Number, Amount From Table_B) as B
On A.Order_Number = B.Order_Number
Group By A.Order_Number
Invoice_ID | Amount_Table_A | Amount_Table_B |
01 | 80 | 20 |
我嘗試添加的總和()子句每個量在SELECT語句的屬性,得到了各重複記錄的總和:
Select A.Order_Number, sum(A.Amount), sum(B.Amount)
From Table_A as A
Left Join (Select Order_Number, Amount From Table_B) as B
On A.Order_Number = B.Order_Number
Group By A.Order_Number
Invoice_ID | Amount_Table_A | Amount_Table_B |
01 | 2400 | 800 |
請問有什麼可以修改此查詢,以顯示真正的價值?預期值爲:
Invoice_ID | Amount_Table_A | Amount_Table_B |
01 | 200 | 200 |
請注意,這是一個過於簡化的數據集。真正的表有超過一百萬條記錄,我需要確保Invoice_ID在兩個表中總計相同。
非常感謝你!
您能否請您發佈表A和表B中的第一個10-20條記錄,以及您需要的10-20條記錄計算所需的輸出。這將有助於更好地瞭解你需要什麼。 –
我剛剛編輯了問題,以便您可以訪問數據集。期望的輸出是每個表的期望值:200。 –