首页
学习
活动
专区
圈层
工具
发布

谈谈MySQL如何选择float, double, decimal

前言 我们知道在MySQL中有3种类型可以表示实数,分别是float,double和decimal。关于如何合理得使用这三种类型,网上的答案也层出不穷。...采用float和double本来就是不准的!! 实数保存和分配存储长度的关系 在MySQL官方里有这样一句话,数据准确度取决于分配给数据类型存储的长度。...来看这样一个例子 mysql> create table f2 (f1 float(15,2)); Query OK, 0 rows affected (0.01 sec) mysql> insert...1 row in set (0.00 sec) mysql> alter table f modify f1 float(10,4); Query OK, 0 rows affected (0.02...作为MySQL官方唯一指定精确存储的decimal类型,后续有精力再研究为什么能做到精确todo 如何选择float,double,decimal 结论总是放在最后,根据上面的分析:可以得出以下结论 1

6.7K42
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL 是什么

    MySQL 是一个功能齐全的关系数据库管理系统(RDBMS),可以与 Oracle DB 和 Microsoft 的 SQL Server 竞争。...MySQL 由瑞典公司 MySQL AB 赞助,该公司由 Oracle 公司拥有。但是,MySQL 源代码是免费提供的,因为它最初是作为免费软件开发的。...MySQL MySQL 是一个最初开发并于 1995 年首次发布的自由软件数据库引擎.MySQL 以其产品创始人之一的 My,女儿 Michael Widenius 命名。...MySQL 运行着一些着名网站的后端数据库,包括维基百科,谷歌和 Facebook–尽管它具有分散的,免费的哲学,但它的稳定性和稳健性的证明。...虽然 MySQL 在技术上被认为是 Oracle DB 的竞争对手,但 Oracle DB 主要用于大型企业,而 MySQL 则被更小,更面向 Web 的数据库使用。

    1.9K10

    MySQL面试必问的decimal与float, double的问题

    decimal与float, double的区别是什么? 面试官提出的问题 在MySQL数据库中,我们经常需要存储和处理小数数据。...decimal、float和double是MySQL中用于存储小数的三种主要数据类型。请问你能解释一下它们之间的主要区别吗?并提供一些代码案例来展示它们在实际应用中的不同表现。...代码案例 下面是一个包含float、double和decimal字段的表创建语句,以及插入和查询数据的示例: -- 创建包含float, double, decimal字段的表 CREATE TABLE...test_numbers ( float_column FLOAT COMMENT '单精度浮点数', -- 注释:单精度浮点数列 double_column DOUBLE...第二行数据中,由于浮点数的舍入误差,float_column和double_column存储的0.1 + 0.2的结果可能不是精确的0.3,而是一个近似值。

    1.3K00

    mysql存储过程是什么

    在mysql中,存储过程是一组为了完成特定功能的SQL语句集合。一个存储过程是一个可编程的函数,它在数据库中创建并保存,一般由SQL语句和一些特殊的控制结构组成。...使用存储过程不仅可以提高数据库的访问效率,同时也可以提高数据库使用的安全性。  本教程操作环境:windows10系统、mysql8版本 存储过程是一组为了完成特定功能的 SQL 语句集合。...MySQL 5.0 版本以前并不支持存储过程,这使 MySQL 在应用上大打折扣。...MySQL 从 5.0 版本开始支持存储过程,既提高了数据库的处理速度,同时也提高了数据库编程的灵活性 存储过程是数据库中的一个重要功能,存储过程可以用来转换数据、数据迁移、制作报表,它类似于编程语言,...由于存储过程对数据库的访问是通过存储过程来进行的,因此数据库开发人员可以在不改动存储过程接口的情况下对数据库进行任何改动,而这些改动不会对应用程序造成影响。 (4) 分布式工作。

    2K10

    青铜到王者,看看你的MySQL数据库是什么段位,如何提升?

    MySQL 数据库知识脉络,大致可以分为四大模块: ● MySQL 体系结构; ● MySQL 备份恢复; ● MySQL 高可用集群; ● MySQL 优化。...user=’root’; mysql> flush privileges 刷新权限 mysql>use dbname; 打开数据库 mysql>show databases; 显示所有数据库 mysql...>show tables; 显示数据库mysql中所有的表 mysql>desc user; 显示表mysql数据库中user表的列信息) grant 创建一个可以从任何地方连接到服务器的一个超管账户...数据库字符集 先学会查看数据库的字符集: [root@node3 ~]# mysql -uroot -proot123 mysql> show variables like '%char%'; +--...性能优化还未入门 实战课堂:一则CPU 100%的故障分析 杨廷琨:如何编写高效SQL(含PPT) 一份高达555页的技术PPT会是什么样子? 大象起舞:用PostgreSQL解海盗分金问题

    1.4K40

    云数据库是什么数据库?

    云数据库,简单来说,是一种部署在云计算环境中的数据库服务。...与传统数据库相比,云数据库有着诸多明显差异。传统数据库往往需要用户自行购置服务器、存储设备等硬件设施,还要投入大量精力进行软件安装、配置以及日常维护,不仅成本高昂,而且对技术人员的专业水平要求极高。...同时,云数据库具备强大的扩展性,能够轻松应对业务规模的快速增长,而传统数据库在扩展时通常面临复杂的技术难题和高额成本。  云数据库与关系型数据库有着紧密联系。...云数据库借鉴了关系型数据库不少特性,比如数据的结构化存储方式。在关系型数据库里,数据以表格形式存在,通过行和列来组织,每一行代表一条记录,每一列代表一个属性。...同时,云数据库在诸多方面对关系型数据库进行了创新与拓展。从扩展性来说,传统关系型数据库在面对数据量和访问量剧增时,扩展难度较大且成本高昂。

    1.4K10

    Chronicles 是什么数据库

    简单的来说 Chronicles 就是一个数据库管理系统,但这个数据库管理系统不是我们常说的关系数据库的关联系统。...数据库结构只要对数据库有所了解的都知道数据库通常就是 2 个部分,一个是存储,一个是进程。存储是我们如何把获得数据进行存储的,进程就是用来管理存储的数据的。...数据库就是上面 2 个部分合并在一起,并且通过网络或者某种方式提供给用户使用的。ChroniclesChronicles 就是为了完成上面的这个功能的数据库管理系统。...可以说 Chronicles 就是 EPIC 的核心,没有 Chronicles 就没有 EPICEPICEPIC 系统没有中间层,所有的操作都会通过界面直接作用在数据库上。...Web 应用是有中间层的,EPIC 没有,所以所有的数据操作都直接作用在数据库上,包括用户授权等等。这也就是为什么 EPIC 在用户授权的时候是需要通过客户端授权的。

    50510

    MySQL数据库(一):安装MySQL数据库

    安装环境: 操作系统版本:RHEL 6.5 安装版本:MYSQL 5.1 升级版本:MYSQL 5.6 一、简述MYSQL 1.什么是数据库?...DB DataBase :数据库 依照某种数据模型进行组织并存放到存储器的数据集合 DBMS DataBase Manager System :数据库管理系统 用来操作和管理数据库的大型服务软件...DBS DataBase System :数据库系统 即DB+DBMS指带有数据库并整合了数据库管理软件的计算机系统 2.E-R数据模型 3.常见数据库软件服务商 甲骨文:MYSQL...[确定] 6.登陆mysql并查询当前数据库 [root@svr5 mysql]# mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost...需要注意的是这里的root用户不是Linux系统的root用户,而是mysql数据库的管理员root。

    29.7K80

    MySQL数据库介绍——初始数据库MySQL

    写在前面: 哈喽大家好我是网络豆云计算运维人员,本系列文章主要给大家讲解MySQL数据库的一些操作,从入门到精通,本文讲解的是MySQL数据库的认识。和我一起进入数据库的世界吧!...一.数据库基础知识 Mysql是⼀个开放源代码的数据库管理系统(DBMS) ,它是由 Mysql AB 公司开发、发布并⽀持的。...Mysql 是⼀个跨平台的开源关系数据库管理系统,⼴泛地应⽤ 在 Internet 上的中⼩型⽹站公司开发中。 数据库是由⼀批 数据 构成的 有序 的 集合 。...mysql> CREATE TABLE student -> ( -> student_id INT UNSIGNED, -> name VARCHAR(30), -> sex CHAR(1),...现在只是定义了⼀张表格,但并没有任何数据,接下来这条 SQL 声明语 句,将在 student 表中插⼊⼀条记录: mysql> INSERT INTO student(student_id,name

    6.9K10

    【MySQL】数据库介绍以及MySQL数据库

    目录 数据库介绍 数据库概述 数据表 MySql数据库 MySql安装 登录MySQL数据库 ​​​​​​​SQLyog(MySQL图形化开发工具) 数据库介绍 数据库概述 什么是数据库(DB:DataBase...数据库的保护、维护 通信 数据库与数据库管理系统的关系 常见的数据库管理系统 MYSQL :开源免费的数据库,小型的数据库.已经被Oracle收购了.MySQL6.x版本也开始收费。...SQLite : 嵌入式的小型数据库,应用在手机端。 上课会学:MYSQL 这里使用MySQL数据库。MySQL中可以有多个数据库,数据库是真正存储数据的地方。...表记录与java类对象的对应关系 数据库跟数据表的关系:一个数据库中可以有若干张表 MySql数据库​​​​​​​ MySql安装 安装 参考MySQL安装图解.doc 安装后,MySQL会以windows...也可以在DOS窗口,通过命令完成MySQL服务的启动和停止(必须以管理运行cmd命令窗口) 登录MySQL数据库 MySQL是一个需要账户名密码登录的数据库,登陆后使用,它提供了一个默认的root

    30.1K21

    【Mysql】Mysql数据库基础

    2.数据库操作 2.1显示当前所有的数据库 SHOW DATABASES; 具体SQL语句操作: information_schema数据库是MySQL服务器的数据字典(保存所有数据表和库的结构信息...) performance_schema数据库是MySQL服务器的性能字典(保存全局变量等的设置) mysql 主要负责MySQL服务器自己需要使用的控制和管理信息(用户的权限关系等) sys是系统数据库...,包括了存储过程,自定义函数等信息 切记:这4个数据库是MySQL安装时自动创建的,建议不要随意的删除和修改这些数据库,避免造成服务器故障。...例如,255的位数是3,而-255的位数是4.显示宽度与取值范围无关,若数值的位数小于显示宽度,会填充空格,若大于显示宽度,则不会影响显示结果 之前学过float和double 都是 IEEE 754...mysql中不存在字符;所以可以用‘’或“”表示字符串。 3.3 日期类型 为了方便在数据库中存储日期和时间,MySQL提供了表示日期和时间的数据类型。

    5.3K10
    领券