oracle中sysdate - 1/24/60的意思

发布时间:2021-11-03 00:00:00

在Oracle中,sysdate - 1/6、sysdate - 1/24/60等,表示从当前时间往前推若干时间,若干时间的计算方式如下:
1.sysdate-A表示往前推A天

2.如果是A/B类型,则表示往前推n小时,A表示天数,B表示小时,n = A×24/B。
例如:sysdate - 1/6,此处A = 1;B = 6。
n = 1×24/6 = 4
即 select sysdate - 1/6 from dual 得出的时间是当前时间往前推4小时


3.如果是A/B/C类型。则表示往前推m分钟,A表示天数,B表示小时,C表示分钟。
m的算法: 先计算 A×24/B 得到需要往前推多少小时,假设n = A×24/B。
那么 m = n×60/C。(1小时=60分钟,所以n小时要乘以60,再去除以C,得到往前推的分钟数)
即 select sysdate - 1/24/60 from dual 得出的时间是当前时间往前推1分钟

<<