0
請參考這裏顯示的細節:如何獲得SQL Server中的兩個值之間平均
ID Value
---------
1 120
1 150
查詢:
Select avg(value)
from table
group by Id
電流輸出= 130
預計產量=
120 + 150/2 = 135
請讓我知道您的意見。
請參考這裏顯示的細節:如何獲得SQL Server中的兩個值之間平均
ID Value
---------
1 120
1 150
查詢:
Select avg(value)
from table
group by Id
電流輸出= 130
預計產量=
120 + 150/2 = 135
請讓我知道您的意見。
SQL Server完成整數運算,即使是整數。但是,它不是圓的整數到最近的10也許你的真實數據,下面會做你想要什麼:
Select avg(value * 1.0)
from table
group by Id ;
它的值變化的東西用一個小數點,所以一般不整數平均值。
無法重現 - 我**得到** 135 - 如預期的那樣..... – 2014-09-02 12:05:28
有什麼你在省略?在這個簡單的場景複製中,我得到了135個預期值:'SELECT AVG(value)FROM(VALUES(1,120),(1,150))t(id,value)GROUP BY Id' – GarethD 2014-09-02 12:06:45
爲什麼只有150/2而不是120/2?它背後的邏輯是什麼? – 2014-09-02 12:11:31