Oracle时间日期操作汇总
78 浏览量
更新于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查询的效率和准确性。
2017-12-04 上传
205 浏览量
2023-05-20 上传
2023-11-18 上传
2023-05-10 上传
2023-06-02 上传
2023-07-08 上传
2023-04-19 上传
2023-06-09 上传
weixin_38626242
- 粉丝: 6
- 资源: 950
最新资源
- WPF渲染层字符绘制原理探究及源代码解析
- 海康精简版监控软件:iVMS4200Lite版发布
- 自动化脚本在lspci-TV的应用介绍
- Chrome 81版本稳定版及匹配的chromedriver下载
- 深入解析Python推荐引擎与自然语言处理
- MATLAB数学建模算法程序包及案例数据
- Springboot人力资源管理系统:设计与功能
- STM32F4系列微控制器开发全面参考指南
- Python实现人脸识别的机器学习流程
- 基于STM32F103C8T6的HLW8032电量采集与解析方案
- Node.js高效MySQL驱动程序:mysqljs/mysql特性和配置
- 基于Python和大数据技术的电影推荐系统设计与实现
- 为ripro主题添加Live2D看板娘的后端资源教程
- 2022版PowerToys Everything插件升级,稳定运行无报错
- Map简易斗地主游戏实现方法介绍
- SJTU ICS Lab6 实验报告解析