Oracle日期按天时分秒递减的语法咨询(无需转换单位)
解决方案
Oracle支持直接使用INTERVAL字面量实现按指定天、时、分、秒间隔递减日期,无需手动转换为天的小数形式。
你可以将代码修改为:
SELECT (DATE '2024-01-25' + 13/24) - (LEVEL - 1) * INTERVAL '1 15:14:13' DAY TO SECOND dt FROM dual CONNECT BY LEVEL <= 10;
关键说明:
INTERVAL '1 15:14:13' DAY TO SECOND是Oracle原生的时间间隔语法,直接对应1天15小时14分钟13秒,无需计算1/1440这类转换系数,语法直观且不易出错。- 用减法
- (LEVEL - 1) * ...实现日期递减逻辑,和你原代码的生成规则完全一致,仅替换了间隔的表达方式。
内容的提问来源于stack exchange,提问作者Beefstu
相关产品推荐
相关产品推荐

