MySQL 取整函数四舍五入函数
目录
1、CEIL()、CEILING()
2、FLOOR()
3、ROUND()、ROUND(X,D)
4、TRUNCATE()
CEIL() | 返回不小于参数的最小整数值 |
CEILING() | 返回不小于参数的最小整数值 |
FLOOR() | 返回不大于参数的最大整数值 |
ROUND() | 返回参数的四舍五入值 |
TRUNCATE() | 返回参数舍入到的小数位 |
1、CEIL()、CEILING()
解释:返回不小于参数的最小整数值
CEIL() 是 CEILING() 的同义词。
mysql> SELECT CEIL(9.12), CEIL(-9.12);
+------------+-------------+
| CEIL(9.12) | CEIL(-9.12) |
+------------+-------------+
| 10 | -9 |
+------------+-------------+
1 row in set (0.01 sec)mysql> SELECT CEILING(9.12), CEILING(-9.12);
+---------------+----------------+
| CEILING(9.12) | CEILING(-9.12) |
+---------------+----------------+
| 10 | -9 |
+---------------+----------------+
1 row in set (0.01 sec)
2、FLOOR()
解释:返回不大于参数的最大整数值
mysql> SELECT FLOOR(9.12), FLOOR(-9.12);
+-------------+--------------+
| FLOOR(9.12) | FLOOR(-9.12) |
+-------------+--------------+
| 9 | -10 |
+-------------+--------------+
1 row in set (0.01 sec)
3、ROUND()、ROUND(X,D)
解释:
将参数X四舍五入到小数点后第 D 位。舍入算法取决于数据类型。
如果 D 未指定,则默认为 0,
D 可以是负的,则X值小数点左边的D位数都为零,
D 的最大绝对值为30,任何超过30(或-30)的数字都会被截断
mysql> SELECT ROUND(-9.12),ROUND(-9.58),ROUND(9.58);
+--------------+--------------+-------------+
| ROUND(-9.12) | ROUND(-9.58) | ROUND(9.58) |
+--------------+--------------+-------------+
| -9 | -10 | 10 |
+--------------+--------------+-------------+
1 row in set (0.02 sec)mysql> SELECT ROUND(9.298, 1),ROUND(9.298, 0),ROUND(23.298, -1);
+-----------------+-----------------+-------------------+
| ROUND(9.298, 1) | ROUND(9.298, 0) | ROUND(23.298, -1) |
+-----------------+-----------------+-------------------+
| 9.3 | 9 | 20 |
+-----------------+-----------------+-------------------+
1 row in set (0.03 sec)mysql> SELECT ROUND(0.12345678901234567890123456789012345, 35);
+--------------------------------------------------+
| ROUND(0.12345678901234567890123456789012345, 35) |
+--------------------------------------------------+
| 0.123456789012345678901234567890 |
+--------------------------------------------------+
1 row in set (0.04 sec)
4、TRUNCATE()
解释:
返回舍入到的小数位的参数值。
如果 D 未指定,则默认为 0,
D 可以是负的,则X值小数点左边的D位数都为零,
D 的最大绝对值为30,任何超过30(或-30)的数字都会被截断
注:所有数字均四舍五入为零
mysql> SELECT TRUNCATE(-9.12,0),TRUNCATE(-9.58,0),TRUNCATE(9.58,0);
+-------------------+-------------------+------------------+
| TRUNCATE(-9.12,0) | TRUNCATE(-9.58,0) | TRUNCATE(9.58,0) |
+-------------------+-------------------+------------------+
| -9 | -9 | 9 |
+-------------------+-------------------+------------------+
1 row in set (0.12 sec)mysql>
SELECT TRUNCATE(9.298, 1),TRUNCATE(23.298, -1),TRUNCATE(890912.298, -5);
+--------------------+----------------------+--------------------------+
| TRUNCATE(9.298, 1) | TRUNCATE(23.298, -1) | TRUNCATE(890912.298, -5) |
+--------------------+----------------------+--------------------------+
| 9.2 | 20 | 800000 |
+--------------------+----------------------+--------------------------+
1 row in set (0.12 sec)mysql> SELECT TRUNCATE(0.12345678901234567890123456789012345, 35);
+-----------------------------------------------------+
| TRUNCATE(0.12345678901234567890123456789012345, 35) |
+-----------------------------------------------------+
| 0.123456789012345678901234567890 |
+-----------------------------------------------------+
1 row in set (0.13 sec)
补充:在MySQL 8.0.21及以后版本中,TRUNCATE()返回的数据类型与ROUND()函数的返回类型相同;
本文的代码集:
-- CEIL()、CEILING()
SELECT CEIL(9.12), CEIL(-9.12);
SELECT CEILING(9.12), CEILING(-9.12);-- FLOOR() SELECT FLOOR(9.12), FLOOR(-9.12);-- ROUND(X), ROUND(X,D)
SELECT ROUND(-9.12),ROUND(-9.58),ROUND(9.58);
SELECT ROUND(9.298, 1),ROUND(9.298, 0),ROUND(23.298, -1); -- D 为负的时候小数点左边的D位为 0
SELECT ROUND(0.12345678901234567890123456789012345, 35); -- D 超过30时,会截断-- TRUNCATE()
SELECT TRUNCATE(-9.12,0),TRUNCATE(-9.58,0),TRUNCATE(9.58,0);
SELECT TRUNCATE(9.298, 1),TRUNCATE(23.298, -1),TRUNCATE(890912.298, -5); -- D 为负的时候小数点左边的D位为 0
SELECT TRUNCATE(0.12345678901234567890123456789012345, 35); -- D 超过30时,会截断
若本文有不妥的地方,望指证,谢谢
参考:https://dev.mysql.com/doc/refman/8.0/en/mathematical-functions.html
MySQL 取整函数四舍五入函数相关推荐
- SQL里有取整函数,四舍五入函数,和截取函数 - eminem - JavaEye技术网站
SQL里有取整函数,四舍五入函数,和截取函数 关键字: s round(123.456,2) ------------ 123.47 ROUND ( numeric_expression , leng ...
- java取整公式,Java取整函数 四舍五入函数-Go语言中文社区
简介 Math类中提供了5个与取整相关的函数,如下所示: static double ceil(double a):天花板函数,返回大于等于a的最小整数(但是以浮点数形式存储). static dou ...
- mysql取数据库时间函数_MySQL数据库—日期与时间函数
一. 日期和时间函数 函数的概念:按指定格式输入参数,返回正确结果的运算单元 1. 返回当前日期:curdate() current_date() current_date()+0可以将当前日期转换为 ...
- Excel 取整/取余/四舍五入 函数
1.向上取整函数:roundup(a,b) 参数a指需要向上取整的值,参数b指需要保留的小数位(取0即可) 示例:=ROUNDUP(1.1,0) 结果:2 2.向下取整函数:rounddown(a,b ...
- matlab-高数 plot 二维画图 绝对值函数 取整函数 分段函数
2019独角兽企业重金招聘Python工程师标准>>> matlab : R2018a 64bit OS : Windows 10 x64 typesettin ...
- python中取整函数_如何使用python中的取整floor函数?
如果一工程通过公式计算得出需要7.1辆汽车,直接取整成7辆肯定是完不成任务的,所以只有向上舍入成8才可以,即取整成7,再加1.取整加1,就是向上舍入成整数.相反,如果取整减1,那就是向下舍入成整数,即 ...
- 学习过程中所遇到--如何用python做出取整函数(续)
取整函数 前言 一.定义 二.性质 三.代码 前言 函数y=[x]称为取整函数,也称高斯函数.其中不超过实数x的最大整数称为x的整数部分,记作[x].该函数被广泛应用于数论,函数绘图和计算机领域. 一 ...
- 下取整函数的含义_取整函数
展开全部 取整函数是指62616964757a686964616fe78988e69d8331333365653261不超过实数x的最大整数称为x的整数部分,记作[x]或INT(x).该函数被广泛应用 ...
- 如何使用python中的取整floor函数?
如果一工程通过公式计算得出需要7.1辆汽车,直接取整成7辆肯定是完不成任务的,所以只有向上舍入成8才可以,即取整成7,再加1.取整加1,就是向上舍入成整数.相反,如果取整减1,那就是向下舍入成整数,即 ...
最新文章
- 3梅林刷官改变砖_陶瓷透水砖的四大明显优势
- sdutoj-4209-移动小球
- 【Python】青少年蓝桥杯_每日一题_10.11_小球反弹
- 简单理解session
- Jenkins 从选择插件到配置详解-Gradle
- 机器学习第三篇:详解朴素贝叶斯算法
- hana studio版本和hana版本的区别
- [机器学习] XGBoost 自定义损失函数-FocalLoss
- 安卓投屏大师_苹果,安卓手机如何免费投屏?只要悄悄按下这里,便能轻松实现...
- OpenStack精华问答 | OpenStack 网络中 OpenFlow 规则的作用是什么?
- 非插件实现回复可见效果
- 【Python】文本进度条
- NPM是什么?我们该怎么使用呢
- 数据库建表需要外键约束?
- socket read time out解决方法_深入浅出讲解:php的socket通信
- 恢复初始快捷键_CAD常用命令快捷键大全,47个快捷键50个CAD技巧,教你快速画图...
- JVM、JRE、JDK、java ee sdk with jdk四者的区别
- Apache CXF 入门第一个示例
- mysql group by 用法解析(详细)
- DSD, DFF, DSF, DST概念解析
热门文章
- Kotlin使用Coroutine+ViewModel+retrofit构建一个网络请求框架
- manifest原理和用途
- waitpid() 做人要厚道
- 远程访问操作mysql数据库
- 计算机网络有很多用处,计算机网络的概念、基本组成和用途
- watermark-removal: 一款超赞的开源图片去水印解决方案
- 四旋翼无人机学习第12节--跨页连接符的标号设置、DRC、PDF导出
- DAG 图关键路径算法
- 借用excel 设计 fasterport 表格,主要是考虑 转回excel 整齐好看
- CentOS 6.5 本地yum源配置