看看MYSQL上的奇怪問題。 mysql上的奇怪分區問題
查看列3.結果是0.02876121,但實際結果應該是列4 = 0.02876。 爲什麼MYSQL在小數點上給出錯誤值?
*另一件事是,它只是給出錯誤的值,如果我追加「凡列=‘uniquevalue’」回到我想要的結果。 如果我刪除條件,給出表中的所有記錄,則該值是正確的。
看看MYSQL上的奇怪問題。 mysql上的奇怪分區問題
查看列3.結果是0.02876121,但實際結果應該是列4 = 0.02876。 爲什麼MYSQL在小數點上給出錯誤值?
*另一件事是,它只是給出錯誤的值,如果我追加「凡列=‘uniquevalue’」回到我想要的結果。 如果我刪除條件,給出表中的所有記錄,則該值是正確的。
我懷疑它的所有與計算中使用的數據類型做。
如果「排名」和「PROGRAM_COUNT」都在整數和小數然後SUM混合()將返回一個十進制值,否則將返回一個浮點值。否則SUM()會給出一個float或double。
在SQL float和double都是近似值,您可以定義精度與FLOAT關鍵字的水平。
在你的表的數據類型是不同的列?
你可以張貼等級和計劃的價值算?這可能是由於SUM的價值可能並不完全如上面的數據所示。 – 2010-09-13 07:56:00
我認爲你的意思是'Float'而不是'fault',我不是mySQL的專家,但是看起來mySQL在這裏執行一個浮點計算似乎是相當合理的。 – MikeAinOz 2010-09-13 08:10:14
@Ramesh Soni:排名和節目數量有差異。值在不同的行上。我使用sum()和group by by函數。 – neobie 2010-09-13 08:17:12