数据库-列的类型-浮点数,定点数-数据类型

类型占用空间负数取值范围正数取值范围
FLOAT4 字节-3.4 x 10^383.4 x 10^38
DOUBLE8 字节-1.8 x 10^3081.8 x 10^308
DECIMAL(M,d)M+2-1.8 x 10^3081.8 x 10^308

M表示数字的总位数,而d表示小数点后的位数
d不能大于m;

创建表 不指定精度

# 创建表 
create table FloatTypes(F1 float,d1 double, de decimal);
# 插入整数部分1位,小数部分的21位
insert into floatTypes values(1.1111111111111111111111,1.111111111111111111111,1.1111111111111111111);
select *from floattypes;
/*
+---------+--------------------+------+
| F1      | d1                 | de   |
+---------+--------------------+------+
| 1.11111 | 1.1111111111111112 |    1 |
+---------+--------------------+------+
f1 保存不了21位小数部分因为空间限制 float 4个字节  保存5位
d1 保存不了21位小数部分 8个字节  保存16位
de 好像更加严重 只显示整数部分 这..... 
这要是换成 金钱 得损失 .... 那怎么办呢  其实 可以指定精度 只对于 decimal 开放  对于 float 和 double 而言 不需要 指定精度 
当然硬要指定精度 但float 和double  说:我是演员
*/

创建表 指定精度和标度

#浮点类型带精度和标度 
create table  floatTypesWithPrecAndScale(F1 float(22,21),d1 double(22,21), de decimal(22,21));#创建floatTypesWithPrecAndScale时候 有两个警告
#查看警告
show warnings;
/*
+---------+------+------------------------------------------------------------------------------------------------------------------+
| Level   | Code | Message                                                                                                          |
+---------+------+------------------------------------------------------------------------------------------------------------------+
| Warning | 1681 | Specifying number of digits for floating point data types is deprecated and will be removed in a future release. |
| Warning | 1681 | Specifying number of digits for floating point data types is deprecated and will be removed in a future release. |
+---------+------+------------------------------------------------------------------------------------------------------------------++---------+------+------------------------------------------------------------------------------------------------------------------+
|等级|代码|消息|
+---------+------+------------------------------------------------------------------------------------------------------------------+
|警告| 1681 |指定浮点数据类型的位数已弃用,并将在未来版本中删除。|
|警告| 1681 |指定浮点数据类型的位数已弃用,并将在未来版本中删除。|
+---------+------+------------------------------------------------------------------------------------------------------------------+
F1 float(22,21),d1 double(22,21)  指定位数弃用
*/
#插入数据 1.1111111111111111111111
insert into floatTypesWithPrecAndScale values(1.1111111111111111111111,1.1111111111111111111111,1.1111111111111111111111);
select *from floatTypesWithPrecAndScale;/*
+-------------------------+-------------------------+-------------------------+
| F1                      | d1                      | de                      |
+-------------------------+-------------------------+-------------------------+
| 1.111111164093017600000 | 1.111111111111111200000 | 1.111111111111111111111 |
+-------------------------+-------------------------+-------------------------+
1 row in set (0.00 sec)你会发现这个是f1 是我们指定的21位?  所以f1是演员 本来就保存不了 21位 你让我保存 保存不了 我没有这个能力保存  (范大将军 ,我又来了)
d1也是 保存不了的
而这个de真正保存 了数据  真正的 ‘牛肉面’ 而且里面真的‘牛肉’而且是真材实料的‘铁牛牛肉面’ de decimal(22,21) m:最多指定65位 d:最多指定30位 decimal(65,30) */

插入的位数比创建表时指定的位数要多时会按照四舍五入的规则进行插入

*/
create table  floatTypesWithPrecAndScale1(F1 float(22,2),d1 double(22,2), de decimal(22,2));insert into floatTypesWithPrecAndScale1 values(1.7777777777777777,1.77777777777777777777,1.77777777777777777);select *from floatTypesWithPrecAndScale1;
/*
+------+------+------+
| F1   | d1   | de   |
+------+------+------+
| 1.78 | 1.78 | 1.78 |
+------+------+------+
1 row in set (0.00 sec)
*/
insert into floatTypesWithPrecAndScale1 values(1.74444444444444444444444444444444,1.7444444444444444444444444444444444444,1.7444444444444444444444444444444444444);select *from floatTypesWithPrecAndScale1;
/*
+------+------+------+
| F1   | d1   | de   |
+------+------+------+
| 1.78 | 1.78 | 1.78 |
| 1.74 | 1.74 | 1.74 |
+------+------+------+
*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/610468.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三维猴打印PCB外壳预留板壳间距

3D文件下单那里有一个“3D模型设计规范”,里面详细讲了设计时要考虑打印的参数细节。如果有其他的设计规范不了解的也可以进去查看,里面写的很详细。 这里是打印PCB外壳预留板壳间距相关说明: 设计模型为装配体,请务必满足装配最…

什么是springmvc(介绍)

什么是springmvc 1. 什么是springmvc2.项目中加入springmvc支持2.1 导入依赖2.2 springMVC配置文件2.3 web.xml配置2.4 中文编码处理 3. 编写一个简单的controller4. 视图层配置4.1 视图解析器配置4.2 静态资源配置4.2 编写页面4.3 页面跳转方式 5. SpringMVC处理请求的流程6. …

纯血鸿蒙「扩圈」100天,酝酿已久的突围

坦白讲,去年参加华为开发者大会看到HarmonyOS NEXT(仅运行鸿蒙原生应用,所以也称作「纯血鸿蒙」)的时候,小雷也没料想到鸿蒙原生应用生态的发展速度会如此之快。 9月25日,华为正式对外宣布启动HarmonyOS NE…

【C语言】指针——从底层原理到应用

C语言指针-从底层原理到花式技巧,用图文和代码帮你讲解透彻 目录 一、前言二、变量与指针的本质 1. 内存地址2. 32位与64位系统3. 变量4. 指针变量5. 操作指针变量 5.1 指针变量自身的值5.2 获取指针变量所指向的数据5.3 以什么样的数据类型来使用/解释指针变量所指…

Python学习笔记-使用Anaconda+VSCode配置开发环境

文章目录 概述一、安装Anaconda1.1 下载软件1.2 安装anaconda1.3 配置环境 二、配置虚拟环境2.1 使用conda创建一个新的虚拟环境2.1.1 使用search指令查看支持的python的版本:2.1.2 使用create创建指定版本的虚拟环境:2.1.3 使用env list查看虚拟环境列表…

2024年软考选哪科?什么时候考试?

软考是指计算机技术与软件专业技术资格(水平)考试,是由中国工业和信息化部(前身为工信部)以及人力资源和社会保障部(前身为人社部)领导下的国家级考试。 软考共设有27个不同的资格类别&#xf…

Redis 为什么是单线程的?

Redis 为什么是单线程的? Redis 之所以选择单线程模型,主要是出于性能和设计上的考虑。以下是一些解释为什么 Redis 采用单线程模型的原因: 内存密集型操作: Redis 主要用于执行内存密集型操作,例如读写操作都在内存中…

8大基本类型的转换和运算符

类型间的转换: 基本类型由小到大依次为: ​ byte----short----int----long----float----double ​ char---- 两种方式: - 自动/隐式类型转换:小类型到大类型 - 强制类型转换:大类型到小类型 ​ 语法&am…

解密TF-IDF:打开文本分析的黑匣子

1.TF-IDF概述 TF-IDF,全称是“Term Frequency-Inverse Document Frequency”,中文意为“词频-逆文档频率”。这是一种在信息检索和文本挖掘中常用的加权技术。TF-IDF用于评估一个词语对于一个在语料库中的文件集或一个语料库中的其中一份文件的重要程度…

BigDecimal使用记录

在公司经费这块用到了BigDecimal类,特此整理记录一下。 一、BigDecimal简介: float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而&a…

vulhub中的Apache HTTPD 多后缀解析漏洞详解

Apache HTTPD 多后缀解析漏洞 1.查看python版本 这里python版本很重要,因为版本过低可能会导致后面的结果运行不成功 这里我就遇到了因为版本过低而执行不了docker-compose up -d的情况 查看python版本 cd /usr/bin ls -al python* 当版本过低时安装高版本的 …

_Incapsula_Resource与Rc4混淆分析

一、获得混淆js 这么一个地址 https://www.interasia.cc/_Incapsula_Resource?SWJIYLWA5074a744e2e3d891814e9a2dace20bd4,719d34d31c8e3a6e6fffd425f7e032f3 浏览器打开这个地址 复制这个js,到浏览器调试 先格式化查看,也就是一个eval函数执行b函数 …

base64 图片进行编码、解码;api调用

1、base64 图片进行编码、解码 编码 import base64# 假设您有一个图像文件,例如 image.jpg with open(r"C:\Users\l****1686722996428308480-1 (1).jpg", rb) as image_file:# 读取图像文件的二进制数据image_data image_file.read()# 将二进制数据编码…

C语言基础语法跟练

题源&#xff1a;牛客网 1、输出"Hello Nowcoder!"。开始你的编程之旅吧。 #include <stdio.h>int main() {printf("Hello Nowcoder!");return 0; } 2、KiKi学会了printf在屏幕输出信息&#xff0c;他想输出一架小飞机。请帮他编写程序输出这架小…

超实用的 Python 库之lxml使用详解

概要 XML&#xff08;可扩展标记语言&#xff09;和HTML&#xff08;超文本标记语言&#xff09;是广泛用于数据交换和网页构建的标记语言。在Python中&#xff0c;有许多库可以用来解析和处理XML和HTML文档&#xff0c;其中最强大和常用的之一是lxml。lxml是一个高性能、功能…

回归预测 | Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测

回归预测 | Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测 目录 回归预测 | Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现DE-BP差分算法优化BP神经网络多变量回归预测&#xff08;完整源码和…

spring-mvc数据绑定和表单标签库(介绍)

spring-mvc数据绑定和表单标签库 1. WEB-INF下页面跳转2. ModelAttribute来注解非请求处理方法3. 表单标签4. 其他标签5. IDEA tomcat控制台中文乱码问题处理 1. WEB-INF下页面跳转 容器启动后&#xff0c;如何默认显示web-inf目录下的系统首页。 2. ModelAttribute来注解非…

设计模式-空对象模式

设计模式专栏 模式介绍模式特点应用场景空对象模式和单例模式的区别代码示例Java实现空对象模式Python实现空对象模式 空对象模式在spring中的应用 模式介绍 空对象模式是一种设计模式&#xff0c;用于处理对象不存在的情况。它通过返回一个空对象来代替 null 值&#xff0c;从…

flutter 配置安卓的签名

背景 最近遇到一个需求&#xff0c;需要实现app的热更新,了解了一下热更新方案时间的时间有点久&#xff0c;就做了个app升级的过渡版本&#xff0c;然后遇到问题 真机安装遇到签名不一致的问题 如下 安装过程 版本升级的代码如下 ///版本更新检查static Future<VersionEnti…