ceil函数和round函数的用法
今天开发一个功能,需要计算两个日期之间的小时数,所以写了一个sql,如下:
select ceil((to_date('2020-07-25 18:00:00', 'YYYY-MM-DD HH24-MI-SS') -to_date('2020-07-24 18:00:00', 'YYYY-MM-DD HH24-MI-SS')) * 24) as minutesfrom dual运行结果:24select ceil((to_date('2020-07-25 19:00:00', 'YYYY-MM-DD HH24-MI-SS') -to_date('2020-07-24 18:00:00', 'YYYY-MM-DD HH24-MI-SS')) * 24) as minutesfrom dual运行结果:26
2020-07-25 18:00:00 - 2020-07-24 18:00:00 为24个小时是正确的,但是加了一个小时候发现减出来的时差变成了26个小时,比实际多出1个小时,然后我百度了ceil函数,解释如下:
ceil() 函数向上舍入为最接近的整数
我在运行ceil中的sql:
select (to_date('2020-07-25 19:00:00', 'YYYY-MM-DD HH24-MI-SS') -to_date('2020-07-24 18:00:00', 'YYYY-MM-DD HH24-MI-SS')) * 24 as minutesfrom dual运行结果:25select to_date('2020-07-25 19:00:00', 'YYYY-MM-DD HH24-MI-SS') -to_date('2020-07-24 18:00:00', 'YYYY-MM-DD HH24-MI-SS') as minutesfrom dual运行结果:1.04166666666667select ceil(25) from dual运行结果:25
当我直接用所得天数 * 24时运行结果为25,我又单独执行了ceil(25),运行结果也是25,所以我有个疑惑不清楚为什么会变成了26,有清楚的大神可以帮我解下惑,万分感谢!!!
最后我用round函数+to_number()实现了我想要的结果:
select round(to_number((to_date('2020-07-25 18:00:00', 'YYYY-MM-DD HH24-MI-SS') -to_date('2020-07-24 18:00:00', 'YYYY-MM-DD HH24-MI-SS')) * 24)) as minutesfrom dual运行结果:24select round(to_number((to_date('2020-07-25 19:00:00', 'YYYY-MM-DD HH24-MI-SS') -to_date('2020-07-24 18:00:00', 'YYYY-MM-DD HH24-MI-SS')) * 24)) as minutesfrom dual运行结果:25
round函数返回一个数值,该数值是按照指定的小数位数进行四舍五入运算的结果。除数值外,也可对日期进行舍入运算
round函数的使用用法
round函数就是返回一个数值,该数值是按照指定的小数位数进行四舍五入运算的结果 [1] 。
round函数的语法是:ROUND(number,num_digits),即:Round(数值,保留的小数位数)
Number:需要进行四舍五入的数字。
Num_digits:指定的位数,按此位数进行四舍五入。
其中,如果 num_digits 大于 0,则四舍五入到指定的小数位。
如果 num_digits 等于 0,则四舍五入到最接近的整数。
如果 num_digits 小于 0,则在小数点左侧进行四舍五入。
=ROUND(3.19, 1) 将 3.19 四舍五入到一个小数位 (3.2)
=ROUND(2.649, 1) 将 2.649 四舍五入到一个小数位 (2.6)
=ROUND(-5.574, 2) 将 -5.574 四舍五入到两小数位 (-5.57)
=ROUND(18.8, -1) 将 18.8 四舍五入到小数点左侧一位 (20)。这个参数-1表示取整到十位数。
ceil函数和round函数的用法相关推荐
- excel函数实战(CEILING函数,ROUND函数,FLOOR函数的语法)
CEILING函数:CEILING函数用于将数字向上取整,即向远离零的方向取整. 语法:CEILING(number, significance) 其中,number是要向上取整的数,signific ...
- python学习笔记——floor函数与ceil函数、round函数、reduce函数
floor函数用于向下取整,需要导入math模块才能使用. ceil函数用于向上取整,同样需要通过math模块才能使用. round函数用于保留指定位数,有类似功能的有三种函数格式化输出方法 用法ro ...
- 详解floor函数、ceil函数和round函数
1.floor函数 功能:把一个小数向下取整 即就是如果数是2.2 ,那向下取整的结果就为2.000000 原型:double floor(doube x); 参数解释: x:是需要计算的数 返回值: ...
- 关于floor函数与ceil函数与round函数
一: floor(x),也写做Floor(x),其功能是"向下取整",或者说"向下舍入",即取不大于x的最大整数(与"四舍五入"不同,下取整 ...
- hive小数取整函数(floor函数,ceil函数,round函数)
1. floor()函数 向下取整 select floor(1.4) # 结果是:1 2. ceil()函数 向上取整 select ceil(1.4) #结果是:2 3. round()函数 四舍 ...
- floor函数 和 ceil函数、fix函数、round函数
头文件 #include<mah.h> floor函数 1.函数原型: 1 double floor ( double x ); 2 float floor ( float x ); 3 ...
- C语言(C++)中:详解floor函数、ceil函数和round函数
C语言中 1.floor函数 功能:把一个小数向下取整即就是如果数是2.2 ,那向下取整的结果就为2.000000 原型:double floor(doube x);参数解释:x:是需要计算的数 返回 ...
- C语言中:详解floor函数、ceil函数和round函数
C语言中 1.floor函数 功能:把一个小数向下取整即就是如果数是2.2 ,那向下取整的结果就为2.000000 原型:double floor(doube x);参数解释:x:是需要计算的数 返回 ...
- python round函数_Python round() 函数
这个一直都想写,但是因为这个点比较小,所以一直懒得动手.不过还是补上吧,留着早晚是个祸害. round函数很简单,对浮点数进行近似取值,保留几位小数.比如 >>> round(10. ...
最新文章
- oracle 11查询sid,oracle 11g 更改sid和dbname
- 正则表达式与html信息提取,基于正则表达式的HTML信息提取.pdf
- 单片微型计算机与接口技术第5版重点,韶关学院《单片微型计算机与接口技术》(第5版)思考题与习题解答.pdf...
- Maven-打包的时候丢失非.java的文件
- 前台 时不时报 could not proxy request_长春中考成绩不理想可以报的高中
- python123反素数_初学python之路-day01
- origin 图片导出word
- C51单片机-蓝牙遥控小车
- 正常邮件被误判为垃圾邮件
- RMAN-06004 RMAN-20003
- java 各种编码间转换
- vue 动态绑定 class
- 计算机无法识别ipad2,iTunes无法识别iPad mini怎么办【解决方法】
- 数字图像处理学习笔记(三)——空间分辨率和灰度分辨率、等偏爱曲线
- 118 以太坊 ethereum hardhat :编译 artifacts
- simplify-js 降低曲线拟合使用的点数
- 游戏开发校招面试全记录(大三篇)
- 中国软件与IT外包产业以印度为镜
- beamer中block样式修改
- BP神经网络在期货价格预测中的应用
热门文章
- Docker系列:梦开始的地方(1)——Windows10环境下的Docker安装、更改镜像源和更改默认镜像容器存储地址
- 【回溯】leetcode1219.黄金矿工
- Android Studio中使用Git——结合GitLab,Android热修复原理
- CSDN日报190923:盘点那些被AI换脸、一键“脱”衣所滥用的AI模型
- 使用安装 .NET 脚本或提取二进制文件在 Linux 上安装
- 函数中arguments是什么?
- 字节跳动All in教育的战略决心与长期主义
- java 项目打包jar 的配置(springboot )
- 交错校验法 / interleaving
- 《GrowingIO指标体系与数据采集》读书笔记