如有不足請幫忙留言區補充謝謝~
一,數值類型保留小數點后兩個0
在存入數據時,應客戶需求數值類型,比如錢數,分數等等需要精確到小數點后幾位。
800存入時顯示為800.00
方法:在建表時直接定義此數值的類型為float,double或decimal類型
例如:
1 create table num( 2 shuzi float(4,2), 3 shuzi2 double(4,2), 4 shuzi3 decimal(4,2) 5 );
類型(a,b):a指定指定小數點左邊和右邊可以存儲的十進制數字的最大個數,
b指定小數點右邊可以存儲的十進制數字的最大個數,小數位數必須是從 0 到 a之間的值。默認小數位數是 0。
此時在插入數據
1 insert into num values(22,33,44);
那么此時顯示的數據就是:
22.00 33.00 44.00
無需手動輸入00.
最后說一下
float:浮點型,含字節數為4,32bit,數值范圍為-3.4E38~3.4E38(7個有效位 對最后一位數四舍五入)
double:雙精度實型,含字節數為8,64bit數值范圍-1.7E308~1.7E308(15個有效位 對最后一位數四舍五入 float和double的相乘操作,數字溢出不會報錯會有精度的損失)
decimal:數字型,128bit,不存在精度損失,常用於銀行帳目計算。(28個有效位 當對decimal類型進行操作時,數值會因溢出而報錯)
二,在存入數據時存入整數,select 查詢時取出帶小數.00的數據
同樣應客戶需求,可能僅僅是因為美觀而進行的操作
在定義時定義的就為整形或者其它的數值類型那么在取數據時可以使用round()函數
見表並定義
1 create table num( 2 shuzi int 3 );
插入數據
insert into num values(22);
取出數據
1 select round(shuzi,2) from num;
此時顯示為22.00
