1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/nero_xeizi-php-notes

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
浮点型和定点型.md 1.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
wyx Отправлено 27.04.2019 06:10 a5b44c6

浮点型和定点型

基本概念

float

float数值类型用于表示单精度浮点数值, 而double数值类型用于表示双精度浮点数值
float和double都是浮点型, 而decimal是定点型
MySQL浮点型和定点型可以用类型名称后加(M,D)来表示, M表示该值的总共长度, D表示小数点后面的长度, M和D又称为精度和标度
如float(7,4), 最大可存入-999.9999, 如果尝试存入999.00009, 则存入结果为999.0001

浮点型和定点型的区别是浮点型在一些情况下数据库中存放的是近似值, 而定点型存放的永远都是精确值
浮点型不能做精确的计算, 其计算结果不准确, 只是近似, 而定点型可以做精确的计算

float默认保存6位精度(包括小数位和整数位), 超过6位会被四舍五入并补入0

mysql > create table float_test(id int, float_test float);
mysql > desc float_test;
+------------+---------+------+-----+---------+-------+
| Field      | Type    | Null | Key | Default | Extra |
+------------+---------+------+-----+---------+-------+
| id         | int(11) | YES  |     | NULL    |       |
| float_test | float   | YES  |     | NULL    |       |
+------------+---------+------+-----+---------+-------+
mysql > insert into float_test values(1, 123456),(2, 123.456),(3, 1234567),(4,1234.5678);
mysql > select * from float_test;
+------+------------+
| id   | float_test |
+------+------------+
|    1 |     123456 |
|    2 |    123.456 |
|    3 |     123570 |
|    4 |    1234.57 |
+------+------------+

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/nero_xeizi-php-notes.git
git@api.gitlife.ru:oschina-mirror/nero_xeizi-php-notes.git
oschina-mirror
nero_xeizi-php-notes
nero_xeizi-php-notes
master