0
我想比較兩個浮點數。 我已經在這裏看到了很多關於stackoverflow的問題,但是我還沒有找到解決方案。mysql比較浮點數被忽略
$sql = "SELECT price FROM list
WHERE price != '".(float)$price."'";
價格是「6.30」 在DB我想,除了一個有價6.30所有結果。但它完全忽略它。
我知道它與浮游物有關。我不能編輯數據庫表,這不是一個不幸的選擇。
是否有任何其他方式通過只使用mysql來做到這一點?
你不能比較像這樣的花車。你需要一個固定的表示,就像'sprintf'和可預測的四捨五入一樣。這可能是'6.29999999381238'。 – tadman
花車並不精確。如果支持,您應該使用數字(X,2),小數或其他貨幣。雙打和浮動是非常大或非常小的數字,不需要精度。如果在表格列表中,您將價格存儲爲浮點數或雙倍數,那麼您做錯了。價格應該是貨幣,或具有特定小數位數的數字。爲更詳細的答案http://stackoverflow.com/questions/13030368/best-data-type-to-store-money-values-in-mysql – xQbert
非常感謝您的答案 – giancy9