我在MySQL中创建了一个表,其中有一个float(2,2)类型的列,并在其中插入了值10,但我发现存储的值是0.99.

这背后的原因是什么?如果我们在MySQL中使用float(m,n)类型的列,其中'm'和'n'是整数,那么在该列中存储值时应该注意什么?

推荐答案

float(2,2)表示"使用两位数字,其中两位在小数点后使用".

因此,可以从-0.99到0.99.不能在该列中插入10,逗号前至少需要两位数字(所以float(4,2)或float(2,0)).

MySQL允许使用非标准语法:FLOAT(M,D)或REAL(M,D)或DOUBLE

Mysql相关问答推荐

—符号在哪里条件""

过程/别名是有点长的MySQL命令的一部分吗?

MySQL在使用SELECT*时不使用索引

SQL不断返回查询失败,并且不知道从这里到哪里go

MySQL全文索引和不区分大小写搜索带来的挑战

如何查询一行

如何创建一个列,该列在另一个表中具有值的计数?

避免多个SQL查询的重构代码

数据导入和默认目标架构空列表. (Mysql 工作台 8)

Mysql,显示谁已经和没有 Select 退出巴士服务

将sql查询转换为sequelize

MySQL 将分组 JSON Select 转换为单个 JSON 对象

SQL 查找边界之间的值

动态创建内联 SQL 表(用于排除左连接)

这是将表单数据插入 MySQL 数据库的安全方法吗?

在mysql中增量更新值

如何在 MySQL 中删除此索引?

PHP mySQL - 将新记录插入表中,主键自动递增

在 MySQL 中的子查询上使用 GROUP_CONCAT

MySQL 更新连接表