oracle 两个日期相减,返回天-时-分-秒的函数
2017-08-23 00:00
711 查看
摘要: 计算两个时间间的间隔年数、月数、天数、小时数和秒数。而当你进行两个日期的相减运算的时候,得到的是“带小数位的天数”。
那么我们可以通过一个函数将天数转换成“天时分秒”格式:
那么我们可以通过一个函数将天数转换成“天时分秒”格式:
CREATE OR REPLACE FUNCTION F_DAYS2STR(P_DAYS IN NUMBER DEFAULT 0) RETURN VARCHAR2 IS --For: 将天数转换成天时分秒格式 DAYS NUMBER := NVL( P_DAYS, 0 ); VD NUMBER;--天 VH NUMBER;--小时 VM NUMBER;--分 VS NUMBER;--秒 RESULT VARCHAR2(100);--返回值 BEGIN VD := TRUNC( DAYS ); VH := TRUNC(( DAYS - VD )* 24 ); VM := TRUNC(( DAYS - VD - VH / 24 )* 24 * 60 ); VS := TRUNC(( DAYS - VD - VH / 24 - VM / 24 / 60 )* 24 * 60 * 60 ); SELECT DECODE( VD, 0, '', VD || '天' )|| DECODE( VH, 0, '', VH || '小时' )|| DECODE( VM, 0, '', VM || '分' )|| DECODE( VS, 0, '', VS || '秒' ) INTO RESULT FROM DUAL; RETURN(RESULT); END; ps:SELECT F_DAYS2STR(SYSDATE-TO_DATE('2017-08-22 15:30','yyyy-MM-dd hh24:mi')) FROM dual。
相关文章推荐
- Oracle常用函数:DateDiff() 返回两个日期之间的时间间隔自定义函数
- mysql 函数日期 两个日期相减 得到相差几天
- 根据日期返回所在的季度---oracle 函数
- 两个日期类相减得到相差天数的小函数
- DateDiff() 函数返回两个日期之间的差值
- oracle里如何将两个日期的时间差返回**时**分的格式
- Oracle中两个日期处理函数总结
- DateDiff 函数返回两个日期之间的时间间隔
- 返回两个日期间的时间列表的函数
- 定义和用法 DATEDIFF() 函数返回两个日期之间的天数
- 日期处理 yy-mm-dd HH:mm:ss时间格式转换毫秒,两个时间格式毫秒数相减,返回“xx天x
- Oracle中如何返回两个日期之间的时间间隔?
- Oracle函数返回超长字符串问题
- C语言实现 编写一个函数,传入a,b两个int类型的变量,返回两个值的最大公约数。
- Oracle 根据汉字返回对应拼音的 函数
- [oracle] 常用函数 - 日期/时间函数
- php计算两个日期时间差(返回年、月、日)
- oracle 日期转换格式 函数
- DATEDIFF_返回跨两个指定日期的日期和时间边界数
- Oracle获取两个日期相差的小时