[英]MySQL - storing numbers with decimal point
是否存在以某種方式在數據庫中存儲帶或不帶小數點的數字? 用戶可以將10和10.1之類的數據存儲到數據庫中-為了在MySQL中存儲數字,我使用十進制數據類型列,因此在此示例中,數據庫中將存儲10.00和10.10 。
但是我需要按用戶存儲數字的確切形式-因此在這種情況下為0 10和10.1 。
是否可以在數據庫級別解決它,或者我必須在應用程序級別進行編輯?
利用case
case format(@number,0)=@number
when 1 then format(@number,0)
else
case format(@number,1)=@number
when 1 then format(@number,1)
else @number
end
end
或者if
if (format(@number,0)=@number, format(@number,0),
if (format(@number,1)=@number, format(@number,1), @number))
一種方法是,當您執行選擇查詢以忽略此前導零時
http://www.foscode.com/remove-trailing-zeros-mysql-decimal-fields/
您可以將用戶輸入的任何內容保存為VARCHAR,因此您將存儲他們輸入的內容。 然后,在需要時,可以從數據庫中加載它,並根據需要將其解析為相應的float值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.