一,數(shù)值類型保留小數(shù)點后兩個0
成都創(chuàng)新互聯(lián)公司服務(wù)項目包括雨花臺網(wǎng)站建設(shè)、雨花臺網(wǎng)站制作、雨花臺網(wǎng)頁制作以及雨花臺網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,雨花臺網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到雨花臺省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
在存入數(shù)據(jù)時,應(yīng)客戶需求數(shù)值類型,比如錢數(shù),分?jǐn)?shù)等等需要精確到小數(shù)點后幾位。
800存入時顯示為800.00
方法:在建表時直接定義此數(shù)值的類型為float,double或decimal類型
例如:
1 create tablenum(2 shuzi float(4,2),3 shuzi2 double(4,2),4 shuzi3 decimal(4,2)5 );
類型(a,b):a指定指定小數(shù)點左邊和右邊可以存儲的十進(jìn)制數(shù)字的最大個數(shù),
b指定小數(shù)點右邊可以存儲的十進(jìn)制數(shù)字的最大個數(shù),小數(shù)位數(shù)必須是從 0 到 a之間的值。默認(rèn)小數(shù)位數(shù)是 0。
此時在插入數(shù)據(jù)
1 insert into num values(22,33,44);
那么此時顯示的數(shù)據(jù)就是:
22.00 33.00 44.00
無需手動輸入00.
最后說一下
float:浮點型,含字節(jié)數(shù)為4,32bit,數(shù)值范圍為-3.4E38~3.4E38(7個有效位 對最后一位數(shù)四舍五入)
double:雙精度實型,含字節(jié)數(shù)為8,64bit數(shù)值范圍-1.7E308~1.7E308(15個有效位 對最后一位數(shù)四舍五入 float和double的相乘操作,數(shù)字溢出不會報錯會有精度的損失)
decimal:數(shù)字型,128bit,不存在精度損失,常用于銀行帳目計算。(28個有效位 當(dāng)對decimal類型進(jìn)行操作時,數(shù)值會因溢出而報錯)
二,在存入數(shù)據(jù)時存入整數(shù),select 查詢時取出帶小數(shù).00的數(shù)據(jù)
同樣應(yīng)客戶需求,可能僅僅是因為美觀而進(jìn)行的操作
在定義時定義的就為整形或者其它的數(shù)值類型那么在取數(shù)據(jù)時可以使用round()函數(shù)
見表并定義
1 create tablenum(2 shuzi int
3 );
插入數(shù)據(jù)
insert into num values(22);
取出數(shù)據(jù)
select round(shuzi,2) fromnum;
或truncate(shuzi,2)
此時顯示為22.00
X是數(shù)值,D是保留小數(shù)的位數(shù)。
其作用就是按照小數(shù)位數(shù),進(jìn)行數(shù)值截取(此處的截取是按保留位數(shù)直接進(jìn)行截取,沒有四舍五入)。
1.結(jié)果直接截斷
2.不會有0的填充,比如¥330.8,不會顯示¥330.80
轉(zhuǎn)換類型
結(jié)果會有0的填充
X是數(shù)值,D是保留小數(shù)的位數(shù)。
1.結(jié)果四舍五入。
2.不會有0的填充。
帶小數(shù)的字段可以用以下: float,double,decimal看你的數(shù)值范圍選擇。
要求精度高就用decimal
審題錯了...
簡單寫下區(qū)別:
float:浮點型,含字節(jié)數(shù)為4,32bit,數(shù)值范圍為-3.4E38~3.4E38(7個有效位)
double:雙精度實型,含字節(jié)數(shù)為8,64bit數(shù)值范圍-1.7E308~1.7E308(15個有效位)
decimal:數(shù)字型,128bit,不存在精度損失,常用于銀行帳目計算。(28個有效位)
numberic === decimal
float f = 345.98756f;//結(jié)果顯示為345.9876,只顯示7個有效位,對最后一位數(shù)四舍五入。
double d=345.975423578631442d;//結(jié)果顯示為345.975423578631,只顯示15個有效位,對最后一位四舍五入。
注:float和double的相乘操作,數(shù)字溢出不會報錯,會有精度的損失。
decimal dd=345.545454879.....//可以支持28位,對最后一位四舍五入。
注:當(dāng)對decimal類型進(jìn)行操作時,數(shù)值會因溢出而報錯。