0
我正在嘗試計算'mktcoupons'中的重複次數並生成重複項的百分比,以便所有百分比的總和等於1。但是,我所有的百分比都是零。任何建議?謝謝。通過組合2個SQL聚合函數來計算百分比總計
select mktcoupons, count(*) as countof,
count(*)/(select count(*) from X) as percentage
from X
group by mktcoupons
結果是這樣的:
mktcoupons countof percentage
1 2334909 0
2 2725208 0
3 224979 0
4 24987 0
5 2032 0
6 341 0
7 62 0
8 13 0
9 5 0
10 1 0
謝謝!你的兩個查詢都很好用!我仍然試圖弄清楚爲什麼count(*)需要乘以1.0。 (來自X的Count(*))返回一個整數。將整數乘以1.0會使它更「整數」嗎? – May 2015-03-02 14:14:58
@五月。 。 。 SQL Server對整數進行整數運算,所以3/2 = 1,而不是1.5。這會影響平均值和分割。乘以1.0(或更好的顯式轉換)將其轉換爲具有小數位的數字。 – 2015-03-02 14:31:13
@戈登......謝謝!現在我明白了爲什麼,我將計算百分比的查詢部分更改爲(1.0 * count(*))/(從X中選擇count(*))並且它也起作用。所以看起來我可以將分母或分子乘以1.0以使這個技巧奏效! – May 2015-03-02 14:42:56