2013-09-24 45 views
2

我正在使用Firebird數據庫,並且正在嘗試以下sql,但每次它返回0而不是0.61538(etc)。SQL Force顯示十進制值

SELECT (COUNT(myfield)/26) totalcount 
FROM mytable 

現在,當我刪除/ 26時,總計數返回16,因爲它應該。但是當我將26除以後,結果顯示爲0,但它應該顯示爲0.615384的完整十進制值...有人知道它爲什麼沒有返回完整值嗎?我甚至嘗試在CAST((count(myfield)/ 26)中包裝它作爲double)totalcount,但它仍然返回0.

非常感謝您提供任何建議!

回答

5

嘗試:

SELECT COUNT(myfield/26.0) totalcount 
FROM mytable 

或者:

SELECT COUNT(CAST(myfield as double)/26) totalcount 
FROM mytable 

不熟悉火鳥,但你要投/轉換或者分子或分母爲師之前小數其他實現方式,爲整除法返回一個整數值。

+0

你搖滾山羊CO!我用你的第一個建議,它的工作很棒!一旦它允許我接受這個正確的答案。 – Phil