当前位置:网站首页>Oracle 日历表详解(含节假日)
Oracle 日历表详解(含节假日)
2022-08-03 05:22:00 【鱼丸丶粗面】
1 概述
2 示例
2.1 判断双休日
-- 2022 年全年: 364 天
select date '2023-01-01' - date '2022-01-01' - 1 天数
from dual;
-- 系统默认 和 日常使用习惯
select to_char(sysdate, 'D') 默认天,
to_char(sysdate - 1, 'D') 习惯天
from dual;
-- 核心逻辑
select date '2022-01-01' + rownum - 1 日期,
to_char(date '2022-01-01' + rownum - 2, 'D') 星期几
from dual
connect by rownum <= 364;
2.2 判断节假日
with t_date_base as
( -- 一般日
select date '2022-01-01' + rownum - 1 日期,
to_char(date '2022-01-01' + rownum - 2, 'D') 星期几
from dual
connect by rownum <= 364),
t_jjr as
( -- 节假日
select date '2022-01-29' 日期, '补班' 日期类型 from dual
union all
select date '2022-01-30' 日期, '补班' 日期类型 from dual
union all
select date '2022-01-31' 日期, '除夕' 日期类型 from dual
union all
select date '2022-02-01' 日期, '春节' 日期类型 from dual)
select t1.日期,
t1.星期几,
(case -- 注意顺序
when t2.日期 is not null and t2.日期类型 <> '补班' then
'节假日'
when t2.日期 is not null and t2.日期类型 = '补班' then
'工作日'
when t1.星期几 in ('6', '7') then
'节假日' -- 双休日
else
'工作日'
end) 日期类型
from t_date_base t1,
t_jjr t2
where t2.日期(+) = t1.日期
order by t1.日期;
查询结果:(部分)
日期 星期几 日期类型
2022/1/24 1 工作日
2022/1/25 2 工作日
2022/1/26 3 工作日
2022/1/27 4 工作日
2022/1/28 5 工作日
2022/1/29 6 工作日
2022/1/30 7 工作日
2022/1/31 1 节假日
2022/2/1 2 节假日
边栏推荐
- Oracle 密码策略详解
- Execute the mysql script file in the docker mysql container and solve the garbled characters
- NFT租赁提案EIP-5006步入最后审核!让海外大型游戏的链改成为可能
- 漫谈Map Reduce 参数优化
- EIP-5058 能否防止NFT项目方提桶跑路?
- 中国柔性制造系统(FMS)市场发展动态及未来趋势预测报告2022~2028年
- 【XSS,文件上传,文件包含】
- The ` monorepo ` ` hoist ` mechanism lead to the change of the loading configuration file path
- 【DC-5靶场渗透】
- 【HQL】(一)json字符串处理json_tuple和get_json_object
猜你喜欢
随机推荐
浏览器中的 preview 和 response 的值不一致
Qlik Sense 聚合函数及范围详解(Sum、Count、All、ToTaL、{1})
中国食品产业园区行业前景规划建议及投融资模式分析报告2022~2028年
动态调整web系统主题? 看这一篇就够了
边缘辅助无人机网络的分层联邦学习
中国水煤浆行业“十四五”规划与运营模式分析报告2022~2028年
【命令执行与中间件漏洞】
MySQL 索引详解和什么时候创建索引什么时候不适用索引
NFT租赁提案EIP-5006步入最后审核!让海外大型游戏的链改成为可能
Ansible installation and deployment detailed process, basic operation of configuration inventory
【HQL】(一)json字符串处理json_tuple和get_json_object
中国柔性制造系统(FMS)市场发展动态及未来趋势预测报告2022~2028年
亲身分享一次 字节跳动 真实面试经历和面试题
C语言简单实现三子棋小游戏
【源码解读】你买的NFT到底是什么?
C语言简单实现扫雷小游戏
中国食品微生物检测行业深度监测及投资战略规划建议报告2022~2028年
Leetcode刷题——128. 最长连续序列
中国生物反应器行业市场投资分析及前景预测报告2022~2028年
用户登录验证程序的实现