W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
?FLOAT
? 數(shù)據(jù)類型是具有精度(precision)的 ?NUMBER
? 數(shù)據(jù)類型的子類型,需要占 4~40 字節(jié)存儲空間。它的精度是按二進制有效位數(shù)計算的,范圍為 1~126,小數(shù)位數(shù)不可自定義。?FLOAT
? 類型為變長、非精確數(shù)值類型。
FLOAT [(p)]
參數(shù) |
定義 |
范圍 |
說明 |
---|---|---|---|
p |
精度 |
1~126 |
定義數(shù)值精度,按二進制有效位數(shù)計算,轉(zhuǎn)換為十進制精度要乘以 0.30103。 |
說明
- 二進制精度轉(zhuǎn)換為十進制精度的換算關系: ?
十進制精度 = int(二進制精度 x 0.30103)
?。
- 十進制精度轉(zhuǎn)換為二進制精度的換算關系: ?
二進制精度 = int(十進制精度 x 3.32193)
?。
FLOAT(2)
FLOAT
? 類型。?NUMBER(5,2)
? 表示十進制精度的定點數(shù),有效位數(shù)為 5,結(jié)果保留小數(shù)點后 2 位。FLOAT(5) 的二進制精度為 5,轉(zhuǎn)換為十進制精度為?int(5 x 0.30103) = 1.50515
?,向下取整后十進制精度為
1。如 123.45 用科學計數(shù)法表示為 1.2345 x 102,1.2345 小數(shù)點后保留 1 位,四舍五入變?yōu)?1.2,最后顯示為 1.2 x 102 = 120。執(zhí)行以下語句:CREATE TABLE test (col1 NUMBER(5,2), col2 FLOAT(5));
INSERT INTO test VALUES (1.23, 1.23);
INSERT INTO test VALUES (7.89, 7.89);
INSERT INTO test VALUES (12.79, 12.79);
INSERT INTO test VALUES (123.45, 123.45);
執(zhí)行 SELECT 語句查看 test 表,返回結(jié)果如下:
obclient> SELECT * FROM test;
+--------+------+
| COL1 | COL2 |
+--------+------+
| 1.23 | 1.2 |
| 7.89 | 7.9 |
| 12.79 | 13 |
| 123.45 | 120 |
+--------+------+
4 rows in set (0.00 sec)
說明
當轉(zhuǎn)換 ?ANSI FLOAT
? 數(shù)據(jù)時,您可以使用 OceanBase 數(shù)據(jù)庫內(nèi)部使用的 ?FLOAT
? 數(shù)據(jù)類型。但是建議您改用 ?BINARY_FLOAT
? 和 ?BINARY_DOUBLE
? 浮點數(shù)字。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: