Oracle时间日期操作汇总
163 浏览量
更新于2024-08-30
收藏 91KB PDF 举报
本文主要总结了Oracle数据库中关于时间日期的操作方法,包括对当前时间的加减、获取特定日期以及计算工作日等实用技巧。
在Oracle数据库中,时间日期的处理是非常常见且重要的操作。文章列举了一系列的示例来解释这些操作:
1. 基于当前时间(sysdate)的延迟:
- `sysdate + (5/24/60/60)` 用于延迟5秒。
- `sysdate + 5/24/60` 用于延迟5分钟。
- `sysdate + 5/24` 用于延迟5小时。
- `sysdate + 5` 用于延迟5天。
2. 使用 `add_months` 函数进行月份级别的加减:
- `add_months(sysdate, -5)` 用于延迟5个月。
- `add_months(sysdate, -5*12)` 用于延迟5年。
3. 获取特定日期:
- `select last_day(add_months(sysdate, -1)) from dual;` 可以得到上个月的最后一天。
- `select trunc(add_months(sysdate,1), 'MM') - 1` 可以得到本月的第一秒。
4. 获取本周星期一的日期:
- `select trunc(sysdate, 'day') + 1 from dual;`
5. 计算日期间隔:
- `select ceil(sysdate - trunc(sysdate, 'year')) from dual;` 返回年初至今的天数。
- `select to_char(sysdate, 'fmww') from dual;` 显示今天是今年的第几周。
- `SELECT TO_CHAR(SYSDATE,'WW') - TO_CHAR(TRUNC(SYSDATE,'MM'),'WW')+1 AS "weekOfMon" FROM dual;` 显示今天是本月的第几周。
6. 获取月份和年的天数:
- `select to_char(last_day(SYSDATE), 'dd') days from dual;` 显示本月的天数。
- `select add_months(trunc(sysdate, 'year'), 12) - trunc(sysdate, 'year') from dual;` 计算今年的天数。
7. 获取下个星期一的日期:
- `SELECT next_day(sysdate, 'monday') FROM dual;`
8. 计算工作日的方法:
- 示例中创建了一张表`t`,并插入了一些日期范围,用于计算工作日。这通常涉及到更复杂的逻辑,比如排除周末或法定节假日。
这些示例展示了Oracle数据库在时间日期操作上的灵活性,帮助开发者在处理时间相关的业务逻辑时更加得心应手。理解并熟练运用这些函数和方法,能有效提高SQL查询的效率和准确性。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2020-09-10 上传
2020-09-09 上传
2017-12-04 上传
2020-12-16 上传
2012-08-20 上传
2012-08-20 上传
weixin_38626242
- 粉丝: 6
- 资源: 950
最新资源
- PyPI 官网下载 | pipython3-0.1.3.tar.gz
- Preclipse-开源
- FPGA通用SPI驱动程序
- iugi:使用CodeSandbox创建
- cool-partial-dump:mongoosemongoDB的部分转储
- gatling:将现代负载测试作为代码
- test-prj:测试项目
- pandas_flavor-0.1.0.tar.gz
- 在各种公开可用的对话数据集上训练和评估AI模型的框架。-Python开发
- Focuser-crx插件
- Bakery:使用HTML,Bootstrap和PHP为TPA类制作的网站
- pandas_flavor-0.5.0.tar.gz
- 注册表同步:从远程npm注册表同步选定的软件包
- flow:在PyTorch中规范化流程
- 参考资料-项目投资收益测算模板全1451484626.zip
- 【IT十八掌徐培成】Java基础第02天-02.字节-负数表示-补码-128计算.zip