MySQL 是一個(gè)開源的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),支持多用戶、多線程、多表操作,且具有快速、可靠、可擴(kuò)展性強(qiáng)等優(yōu)點(diǎn)。本文將說明如何在 MySQL 中保存四位小數(shù)點(diǎn)。
CREATE TABLE `table_name` ( `column_name` DECIMAL(6,4) );
在 MySQL 中,DECIMAL 數(shù)據(jù)類型表示可精確存儲(chǔ)小數(shù)值,它需要兩個(gè)參數(shù)。第一個(gè)參數(shù)是表示總位數(shù),第二個(gè)參數(shù)是表示小數(shù)點(diǎn)右側(cè)的位數(shù)。在上述代碼中,DECIMAL(6,4) 表示該列最多可存儲(chǔ) 6 個(gè)數(shù)字,且小數(shù)點(diǎn)右側(cè)最多可有 4 位數(shù)字。
當(dāng)向表中插入數(shù)據(jù)時(shí),需要保證插入的數(shù)據(jù)符合該列的數(shù)據(jù)類型,例如:
INSERT INTO `table_name` VALUES(1234.5678);
上述代碼會(huì)報(bào)錯(cuò),因?yàn)椴迦氲臄?shù)據(jù)超過了該列小數(shù)點(diǎn)后的位數(shù)。正確的插入方法應(yīng)該是:
INSERT INTO `table_name` VALUES(12.3456);
MySQL 中 DECIMAL 數(shù)據(jù)類型也可以使用浮點(diǎn)型表示,例如:
CREATE TABLE `table_name` ( `column_name` FLOAT(6,4) );
上述代碼中,F(xiàn)LOAT(6,4) 表示該列最多可存儲(chǔ) 6 個(gè)數(shù)字,且小數(shù)點(diǎn)右側(cè)最多可有 4 位數(shù)字。
但是,使用浮點(diǎn)型表示 DECIMAL 數(shù)據(jù)類型時(shí),可能出現(xiàn)精度誤差。所以建議使用 DECIMAL 數(shù)據(jù)類型,可以保證數(shù)據(jù)精度。