我正在创建一个Oracle快速公式,尝试将员工输入的时间四舍五入到最近的1/4小时。
15-22 minutes = 0.25 hours
23- 37 minutes = 0.50 hours
38-52 minutes = 0.75 hours
53 to 1 hr 7 mins = 1 hour
我能得到输入的小时数。
对于Eg -输入的时间- 5 PM - 8.25 PM,输入的时间为3.42小时,现在应转换为最接近的1/4小时- 3.75。
我应该用什么计算公式把它换算成3.42小时?
3条答案
按热度按时间uujelgoq1#
使用Oracle
DATE
差分进行一些运算。计算1
是一天,1 / (24 * 4)
是四分之一小时,您可以计算输出(为简洁起见而删减)
xurqigkl2#
您可以
TRUNC
将时间计算到小时的开始,然后将分钟和秒部分四舍五入到最接近的15分钟,并加上:其中,对于示例数据:
输出:
| 时间|舍入时间|
| - ------|- ------|
| 2023年3月8日08时01分|2023年3月8日08时00分|
| ...|...|
| 2023年3月8日08时07分|2023年3月8日08时00分|
| 2023年3月8日08时08分|2023年3月8日08时15分|
| ...|...|
| 2023年3月8日08时22分|2023年3月8日08时15分|
| 2023年3月8日08时23分|2023年3月8日08时30分|
| ...|...|
| 2023年3月8日08时37分|2023年3月8日08时30分|
| 2023年3月8日08时38分|2023年3月8日08时45分|
| ...|...|
| 2023年3月8日08时52分|2023年3月8日08时45分|
| 2023年3月8日08时53分|2023年3月8日09:00:00|
| ...|...|
| 2023年3月8日09:00:00|2023年3月8日09:00:00|
fiddle
pengsaosao3#
这就是我对它的理解(一些样本数据和逐步计算;您只能使用
result
)。质询: