推荐链接:
总结——》【Java】
总结——》【Mysql】
总结——》【Redis】
总结——》【Kafka】
总结——》【Spring】
总结——》【SpringBoot】
总结——》【MyBatis、MyBatis-Plus】
Mysql——》decimal
- 一、作用
 - 二、语法
 - 三、示例
 
一、作用
存储精确的数值
二、语法
decimal(p,d) 存储d位小数的p位数
| 参数 | 描述 | 默认值 | 取值范围 | 
|---|---|---|---|
| p | 最大位数(包含小数点后的位数) | 10 | 1~65 | 
| d | 小数位数(小数点后的位数) | 0 | 0~30 | 
三、示例
| 示例 | 最大位数 | 整数位数 | 小数位数 | 取值范围(UNSIGNED) | 
|---|---|---|---|---|
| decimal | 10 | 10 | 0 | -9999999999~9999999999 | 
| decimal(3) | 3 | 3 | 0 | -999~999 | 
| decimal(5,2) | 5 | 3 | 2 | -999.99~999.99 | 
| decimal(7,6) | 7 | 1 | 6 | -9.999999~9.999999 | 
-- 创建表,定义数据类型
CREATE TABLE `test` (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `area` decimal(10, 1) DEFAULT NULL COMMENT '面积',
  PRIMARY KEY (`id`)
) COMMENT='测试表';
-- 修改数据类型
ALTER TABLE `test` 
MODIFY COLUMN `area` decimal(5, 2) NULL DEFAULT NULL COMMENT '面积';
-- 插入数据
INSERT INTO test ( area ) VALUES ( 500.34 ),( 400 );
-- 查询数据
select * from test;
-- 取值范围之内,小数位多了,进行四舍五入
-- 取值范围之外,直接报错:Out of range value
-- 结果:500.34
INSERT INTO test ( area ) VALUES ( 500.344 );
-- 结果:500.35
INSERT INTO test ( area ) VALUES ( 500.349 );
-- 直接报错:1264 - Out of range value for column 'area' at row 1
INSERT INTO test ( area ) VALUES ( 5000.34 );
 

 
















![[AI] 优先级LRTA*搜索算法 Prioritized-LRTA*](https://img-blog.csdnimg.cn/3ad85f9603fb485f96ec0f5b7235aa80.png#pic_center)


