0
我正在計算幾列以在新列中獲得結果。導致全部爲0的列計算結果...原因?
的計算方法如下:
[% Free] = SUM((((((fS.freespace)*8)/1024))/(((fS.size)*8)/1024))*100)
我是新來的sql,所以這是一個很好的機會,我得到一些專家...
所以我的問題是,是什麼導致這種類型的列的結果全部爲0? 它可能是由混合數據類型引起的(在這種情況下,兩者都是整數,更多是因爲我的好奇心和理解)?綜合功能?哪些操作的順序完成?
任何意見,建議或意見讚賞。
它的工作,謝謝!你能解釋爲什麼它不能用我所瞭解的(我是一名學生)。這兩種數據類型都是整數。我用兩個bigint做了類似的計算,結果很有效。 – choloboy
我相信SQL在通過arthimetic時將數據保存在int數據類型中。任何小數被截斷,結果會有一些小數* 100,但由於該小數= 0(因爲小數被截斷),它最終是0 * 100 = 0。有道理嗎? –
描述問題的一個更簡單的方法是SQL Server進行整數算術運算。所以,99/100 = 0。 –