我想查詢下表,這是我的實際表中的一個非常基本的版本,SQL聚合函數查詢選擇多列
ID SaleDate Amount
1 2014-09-01 50
1 2014-10-01 20
1 2014-11-01 10
2 2013-11-01 10
2 2013-12-01 20
2 2014-01-01 25
得到像
輸出
輸出ID MinDate MaxDate StartAmount EndAmount
1 2014-09-01 2014-11-01 50 10
2 2013-11-01 2014-01-01 10 25
SaleDate不斷增加。但金額可能會有所不同。我拿起每個ID的最小和最大日期。這是很容易的部分。但是,我也想要SaleDate上的金額。
我試圖用這個
Select x.ID,min(x.SaleDate) MinDate, x.Amount StartAmount, max(y.SaleDate) MaxDate,y.Amount EndAmount
From Sales x Join Sales y
On x.ID = y.ID
Group By x.ID,y.ID,x.Amount,y.Amount
Order By x.ID
但我相信我不應該使用金額字段組中的功能。 在SO中是否有類似的問題來回答這種情況?或者如果有一個簡單的解決方案,只需指出我的方式。我不需要直接的答案只是一種處理這種情況的一般方法。
您使用的數據庫是? – 2014-11-06 19:16:41
MS SQl Server 2012 – Xion 2014-11-06 19:23:32