总结了MySQL中取整和取小数中遇到的问题和解决的几个方法:不四舍五入取整、取小数、四舍五入取整、取小数、向下、向上取整。

其中:

不四舍五入取整(截取整数部分)就是‘向下取整’;

除了用truncate函数来不四舍五入取小数,我们还可以通过变换的方法利用向下取整得到。

先把需要的小数部分换算成整数,使用向下取整后再换算成小数。

具体方法

类型 类别 函数名 描述
取整
向下
floor(expr) 返回小于expr的最大整数
向上
ceil(expr) 返回大于expr的最小整数
ceiling(expr) 返回大于expr的最小整数
四舍五入
round(expr) 四舍五入取整,后面没有num默认取整
round(expr,num) 四舍五入取整,num为0表示取整
不四舍五入
truncate(expr,num) 不四舍五入取整,num为0表示取整
取小数
四舍五入
round(expr,num) 四舍五入取小数,num指取几位小数
不四舍五入
truncate(expr,num) 不四舍五入取小数,num指取几位小数
round(floor(expr*temp)/temp,num) 其中temp=10^num,num指取几位小数

了解其他数学函数前往:MySQL math函数

实例

select
floor(52.45), #52
floor(52.54), #52
ceil(52.4), #53
ceiling(52.5), #53
round(52.45), #52
round(52.45, 0), #52
round(52.54, 0), #53
truncate(52.45,0), #52
truncate(52.55,0), #52
round(52.45, 1), #52.5
round(52.54, 1), #52.5
truncate(52.45,1), #52.4
truncate(52.54,1), #52.5
round(floor(52.45*10)/10,1), #52.4
round(floor(52.54*10)/10,1) #52.5 #输出:52|52|53|53|52|52|53|52|52|52.5|52.5|52.4|52.5|52.4|52.5

MySQL 不四舍五入取整、取小数、四舍五入取整、取小数、向下、向上取整的更多相关文章

  1. 解决:WdatePicker新增状态下只能取比当前月份大的月份,编辑状态下只能取比当前input里指定月份的月份大的值

    onclick="WdatePicker({ dateFmt: 'yyyy-MM', autoPickDate: true, minDate: this.value==''?'%y-#{%M ...

  2. c++ 取整:四舍五入 向上取整 向下取整

    对于数据的取整是经常需要考虑的 现在总结如下 #include<iostream> #include<cmath> using namespace std; int main( ...

  3. c# 小数四舍五入,向上取整,向下取整,见角进元保留多个小数位数

    /// <summary> /// 实现数据的四舍五入法 /// </summary> /// <param name="v">要进行处理的数据 ...

  4. PHP取整,四舍五入取整、向上取整、向下取整、小数截取

    PHP取整数函数常用的四种方法: 1.直接取整,舍弃小数,保留整数:intval(): 2.四舍五入取整:round(): 3.向上取整,有小数就加1:ceil(): 4.向下取整:floor(). ...

  5. 怎样对小数进行向上取整 / 向下取整 / 四舍五入 / 保留n位小数 / 生成随机数

    1. 向上取整使用: Math.ceil() Math.ceil(0.1); Math.ceil(1.9); 2. 向下取整使用: Math.floor() Math.floor(0.1); Math ...

  6. js只保留整数,向上取整,四舍五入,向下取整等函数

    1.丢弃小数部分,保留整数部分 parseInt(5/2) 2.向上取整,有小数就整数部分加1 Math.ceil(5/2) 3.四舍五入. Math.round(5/2) 4.向下取整 Math.f ...

  7. java取整和java四舍五入方法 BigDecimal.setScale()方法详解

    import java.math.BigDecimal; public class TestGetInt { public static void main(String[] args) { doub ...

  8. java取整和java四舍五入方法 转自董俊杰

    import java.math.BigDecimal; import java.text.DecimalFormat; public class TestGetInt{ public static ...

  9. sql 中取整,四舍五入取整,向下取整,向上取整。

    SELECT round(52.45, 0) AS round4, round(52.54, 0) AS round5, round(52.45, 1) AS round41, round(52.54 ...

  10. Decimal类型截取保留N位小数向上取, Decimal类型截取保留N位小数并且不进行四舍五入操作

    Decimal类型截取保留N位小数向上取Decimal类型截取保留N位小数并且不进行四舍五入操作 封装静态方法 public class DecimalHelper { /// <summary ...

随机推荐

  1. python基础爬虫,翻译爬虫,小说爬虫

    基础爬虫: # -*- coding: utf-8 -*- import requests url = 'https://www.baidu.com' # 注释1 headers = { # 注释2 ...

  2. python进阶(26)collections标准库

    前言 这个模块实现了特定目标的容器,以提供Python标准内建容器dict ,list ,set , 和tuple 的替代选择. 这个模块提供了以下几个函数 函数 作用 namedtuple() 创建 ...

  3. win10+vs2019 编译webrtc m108

    不能访问外网途径的捷径 已经下载好的资源,可以直接生成工程: https://pan.baidu.com/s/14plvXZD_qX9nn441RbsCwA?pwd=ww8c 该资源可以跳过的步骤 步 ...

  4. 使用c#的 async/await编写 长时间运行的基于代码的工作流的 持久任务框架

    持久任务框架 (DTF) 是基于async/await 工作流执行框架.工作流的解决方案很多,包括Windows Workflow Foundation,BizTalk,Logic Apps, Wor ...

  5. 微服务系列之服务注册发现 Consul

    1.为什么需要服务注册与发现   微服务架构中,服务于服务之间内部通信必不可少,比如A服务调用B服务,起初我们的做法是,A服务从配置文件中拿到B服务的IP.端口地址,进行访问,本身是没什么问题的,但是 ...

  6. 推荐一款 .NET 编写的 嵌入式平台的开源仿真器--Renode

    Renode 是一个开发框架,通过让你模拟物理硬件系统来加速物联网和嵌入式系统开发. Renode 可以模拟 Cortex-M.RISC-V 等微控制器,不仅可以模拟 CPU指令,还可以模拟外设,甚至 ...

  7. lightdm开机无法自启问题

    简述 由于我学习了 systemctl disable 服务 这条命令,然后开始皮,把 lightdm 自启动关了,然后开不开了 解决办法:重置 lightdm 服务配置 sudo dpkg-reco ...

  8. 【Java】FileUtils-获取路径的所有文件(或文件夹)

    一.获取指定路径下的所有Excel文件 package com.boulderaitech.utils; import java.io.File; import java.util.Arrays; p ...

  9. eval解析的函数传参 object array

    1 const fn = (...args) => { 2 console.log(...args) 3 } 4 5 const handleEval = (fnName,...args) =& ...

  10. 用 Java?试试国产轻量的 Solon v1.11.4(带视频)

    一个更现代感的 Java 应用开发框架:更快.更小.更自由.没有 Spring,没有 Servlet,没有 JavaEE:独立的轻量生态.主框架仅 0.1 MB. @Controller public ...