2017-08-12 74 views
-2

表A:如何在sp。中編寫查詢?

Unique_code Deal_No Option Aount 
1234   155-12  Sell  100 
1234   155-12  Buy  200 
5678   155-13  Sell  300 
9101   155-14  Buy  400 

極品:

Unique_code Deal_No Option  Aount 
1234   155-12  Sell  300 
5678   155-13  Sell  300 
9101   155-14  Buy  400 

我需要的uniq的代碼的總和。

+0

你嘗試過這麼遠嗎?你能否粘貼你的代碼,即使它不完整。 –

+0

我試着將表B中的數據轉儲作爲臨時表。和Inner加入到unique_code的兩個表格基礎上。但行增加。 – amit

回答

0

簡單GROUP BY和總和將給出結果:

Select Unique_code, Deal_no, Sum(Amount) as Amount 
    from yourtable 
group by Unique_code, Deal_no 

可以如下,如果你有多個列查詢:

Select * from (
    Select *, Sum_Amount = Sum(Amount) over(partition by Unique_Code, Deal_No), 
     RowN = Row_Number() over(partition by Unique_code, Deal_No order by [option] desc) 
     from yourtable) a 
    Where a.RowN = 1 
+0

實際上,表A有多個列,因此Group By子句不可能。 – amit

+0

這是錯誤: 列'A.name'在選擇列表中無效,因爲它不包含在聚合函數或GROUP BY子句中。 – amit

+0

您在分組中選擇除了總和以外的所有列? –