什麼是在MySQL中存儲浮點數的最佳數據類型?將浮點數存儲爲INT?
我可以以某種方式將它存儲爲INT嗎?
我在想VARCHAR是我的最佳選擇,但是如果你們知道更好的東西,我將不勝感激。
Thanx提前!
什麼是在MySQL中存儲浮點數的最佳數據類型?將浮點數存儲爲INT?
我可以以某種方式將它存儲爲INT嗎?
我在想VARCHAR是我的最佳選擇,但是如果你們知道更好的東西,我將不勝感激。
Thanx提前!
爲什麼要將浮點存儲爲int? MySQL和編程語言一樣有十進制和浮點類型。
我假設你有一個很好的理由。要存儲浮點數爲int,你可以嘗試的幾件事情:
如果你有一個平坦的格式編碼浮點數我建議你在看看http://en.wikipedia.org/wiki/IEEE_754-2008
取決於什麼類型的浮點數你存儲的關於MySQL的數字類型,所有的細節可以在這裏找到:
http://dev.mysql.com/doc/refman/5.5/en/numeric-types.html
十進制:對於貨幣,你是因爲它的精確,你不會得到奇怪的小數點算術四捨五入應該使用十進制。
INT:是的,你可以存儲浮點數作爲整數來獲得性能。例如,只要顯示時總是/ 100,貨幣可以以19.56美元或1956美元的價格存儲,而會計軟件經常這樣做。此外,只要在數據庫之外除以10,000,000,則可以將整數的緯度/經度存儲爲322274063,-1109654800 = 32.2274063,-110.9654800。
FLOAT/DOUBLE:然後當然有很長的和雙倍的。性能不是優先或小數位數變化時使用它們。
SO規則:如果性能是一個問題,你知道的小數位總是固定的長度,你可以輕鬆地存儲的INT來存儲浮動。
mysql的FLOAT,REAL和DOUBLE_PRECISION類型有什麼問題? – Habbie 2010-09-30 14:35:04
它沒有什麼不對,只是不知道他們,我主要是前端開發人員,而不是後端,但我給了它一個鏡頭,因此所有的愚蠢問題,謝謝你謙恭我! :) – Odyss3us 2010-09-30 14:45:13
@ user270311浮點數的用法很少。你爲什麼要使用它? – 2010-09-30 15:02:51