下文主要给大家带来MySQL数据浮点类型的实际应用操作,希望这些内容能够带给大家实际用处,这也是我编辑MySQL数据浮点类型的实际应用操作这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。
1。背景
,*,MySQL支持的浮点类型中有单精度类型(浮动),双精度类型(双),和高精度类型(十进制),在数字货币类型中推荐使用高精度类型(十进制)来进行应用。
*, MySQL浮点型和定点型可以用类型名称后加(M, D)来表示,米表示该值的总共长度,维表示小数点后面的长度,M和D又称为精度和标度,如浮子(7,4)的可显示为-999.9999,MySQL保存值时进行四舍五入,如果插入999.00009,则结果为999.0001.FLOAT和双在不指定精度时,默认会按照实际的精度来显示,而十进制在不指定精度时,默认整数为10,小数为0。
2。整数类型所需的存储和值范围
类型占用空间精度精确性FLOAT4单精度精确到小数点后7位小数DOUBLE8双精度精确到小数点后15位小数小数变长高精度精确到小数点后65位小数,
3。浮点数应用中的M/G * G(=|=!)(不一定等于)M
,M=3.1415 G=2.1542,统一精确到小数点后6位
,,*单精度(浮动)应用
*创建float_test表
mysql>, CREATE TABLE float_test ( ,,,,,m 浮动(10,6), ,,,,,g 浮动(10,6) ,,,,,)引擎=INNODB CHARSET=utf8mb4; Query 好吧,,0,rows affected (0.06, sec)
*插入m与g的数据
mysql>, INSERT INTO float_test SELECT 3.1415, 2.1542; Query 好吧,,1,row affected (0.02,秒) 记录:1,,重复:,0,,警告:0 mysql>, select *,得到float_test; + - - - - - - - - - - - - - - - - - - - - - - + |,m ,,,,,,, |, g ,,,,,, | + - - - - - - - - - - - - - - - - - - - - - - + | |,3.141500还以为;2.154200 | + - - - - - - - - - - - - - - - - - - - - - - + 1,row set 拷贝;(0.00,sec)
*进行M/G * G运算
mysql>, SELECT m /, g *, G, m 得到float_test; + - - - - - - - - - - - - - - - - - - - - - - - - - - - +/|,m g *, g ,,, |, m ,,,,,, | + - - - - - - - - - - - - - - - - - - - - - - - - - - - + | |,3.1414999962还以为;3.141500 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - + 1,row set 拷贝;(0.00,sec)
,,*双精度(double)应用
*创建double_test表
mysql>, CREATE TABLE double_test ( ,,,,,m 双(10,6), ,,,,,g 双(10,6) ,,,,,)引擎=INNODB CHARSET=utf8mb4; Query 好吧,,0,rows affected (0.08, sec)
*,插入m与g的数据
mysql>, INSERT INTO double_test SELECT 3.1415, 2.1542; Query 好吧,,1,row affected (0.01,秒) 记录:1,,重复:,0,,警告:0 mysql>, select *,得到double_test; + - - - - - - - - - - - - - - - - - - - - - - + |,m ,,,,,,, |, g ,,,,,, | + - - - - - - - - - - - - - - - - - - - - - - + | |,3.141500还以为;2.154200 | + - - - - - - - - - - - - - - - - - - - - - - + 1,row set 拷贝;(0.00,sec)
*,进行M/G * G运算
mysql>, SELECT m /, g *, G, m 得到double_test; + - - - - - - - - - - - - - - - - - - - - - - - - - - - +/|,m g *, g ,,, |, m ,,,,,, | + - - - - - - - - - - - - - - - - - - - - - - - - - - - + | |,3.1415000000还以为;3.141500 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - + 1,row set 拷贝;(0.01,sec)
,,*高精度(十进制)应用
*,创建decimal_test表
mysql>, CREATE TABLE decimal_test ( ,,,,,m 小数(10,6), ,,,,,g 小数(10,6) ,,,,,)引擎=INNODB CHARSET=utf8mb4; Query 好吧,,0,rows affected (0.05, sec)
*,插入m与g的数据
mysql>, INSERT INTO decimal_test SELECT 3.1415, 2.1542; Query 好吧,,1,row affected (0.02,秒) 记录:1,,重复:,0,,警告:0 mysql>, SELECT *,得到decimal_test; + - - - - - - - - - - - - - - - - - - - - - - + |,m ,,,,,,, |, g ,,,,,, | + - - - - - - - - - - - - - - - - - - - - - - + | |,3.141500还以为;2.154200 | + - - - - - - - - - - - - - - - - - - - - - - + 1,row set 拷贝;(0.00,sec)
*,进行M/G * G运算
mysql>, SELECT m /, g *, G, m 得到decimal_test; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +/|,m g *, g ,,,,,,,,, |, m ,,,,,, | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + | |,3.1415000000000000还以为;3.141500 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + 1,row set 拷贝;(0.00,sec)MySQL数据浮点类型的实际应用操作