oracle查询当前日期的当月日历表

2023-11-20 17:20

本文主要是介绍oracle查询当前日期的当月日历表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

根据给定时间,查询 当月的日历表。

WITH v1 AS
(SELECT sysdate v_date FROM DUAL),v2 AS
(SELECT TRUNC(v_date,'mm') begin_month,add_months(TRUNC(v_date,'mm'),1) next_month FROM v1 ),v3 AS
(SELECT  begin_month+(level-1) AS d FROM v2 CONNECT BY level<=(next_month-begin_month)),v4 AS 
(SELECT TRUNC(d,'day') order_day,to_char(d,'dd') v_day,to_number(to_char(d,'d')) week_day FROM v3 )
SELECT MAX(decode(week_day,1,v_day)) "日",MAX(decode(week_day,2,v_day)) "一",MAX(decode(week_day,3,v_day)) "二",MAX(decode(week_day,4,v_day)) "三",MAX(decode(week_day,5,v_day)) "四",MAX(decode(week_day,6,v_day)) "五",MAX(decode(week_day,7,v_day)) "六"FROM v4
GROUP BY order_day
ORDER BY order_day;

效果:

全年日历:

WITH v1 AS
(SELECT sysdate v_date FROM DUAL),v2 AS
(SELECT TRUNC(v_date,'mm') begin_year,add_months(TRUNC(v_date,'mm'),12) next_year FROM v1 ),v3 AS
(SELECT  begin_year+(level-1) AS d FROM v2 CONNECT BY level<=(next_year-begin_year)),v4 AS 
(SELECT TRUNC(d,'day') order_day,to_char(d,'mm') v_month,to_char(d,'dd') v_day,to_number(to_char(d,'d')) week_day FROM v3 )
SELECT DECODE(ROW_NUMBER() OVER(partition by v_month order by order_day),1, v_month) "月份",MAX(decode(week_day,1,v_day)) "日",MAX(decode(week_day,2,v_day)) "一",MAX(decode(week_day,3,v_day)) "二",MAX(decode(week_day,4,v_day)) "三",MAX(decode(week_day,5,v_day)) "四",MAX(decode(week_day,6,v_day)) "五",MAX(decode(week_day,7,v_day)) "六"FROM v4
GROUP BY  v_month, order_day
ORDER BY  v_month, order_day;

 

这篇关于oracle查询当前日期的当月日历表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/396214

相关文章

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu

MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固 通俗易懂版)

《MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固通俗易懂版)》本文主要讲解了MySQL中的多表查询,包括子查询、笛卡尔积、自连接、多表查询的实现方法以及多列子查询等,通过实际例子和操... 目录复合查询1. 回顾查询基本操作group by 分组having1. 显示部门号为10的部门名,员

mysql关联查询速度慢的问题及解决

《mysql关联查询速度慢的问题及解决》:本文主要介绍mysql关联查询速度慢的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql关联查询速度慢1. 记录原因1.1 在一次线上的服务中1.2 最终发现2. 解决方案3. 具体操作总结mysql

Android如何获取当前CPU频率和占用率

《Android如何获取当前CPU频率和占用率》最近在优化App的性能,需要获取当前CPU视频频率和占用率,所以本文小编就来和大家总结一下如何在Android中获取当前CPU频率和占用率吧... 最近在优化 App 的性能,需要获取当前 CPU视频频率和占用率,通过查询资料,大致思路如下:目前没有标准的

Flutter监听当前页面可见与隐藏状态的代码详解

《Flutter监听当前页面可见与隐藏状态的代码详解》文章介绍了如何在Flutter中使用路由观察者来监听应用进入前台或后台状态以及页面的显示和隐藏,并通过代码示例讲解的非常详细,需要的朋友可以参考下... flutter 可以监听 app 进入前台还是后台状态,也可以监听当http://www.cppcn

Oracle登录时忘记用户名或密码该如何解决

《Oracle登录时忘记用户名或密码该如何解决》:本文主要介绍如何在Oracle12c中忘记用户名和密码时找回或重置用户账户信息,文中通过代码介绍的非常详细,对同样遇到这个问题的同学具有一定的参... 目录一、忘记账户:二、忘记密码:三、详细情况情况 1:1.1. 登录到数据库1.2. 查看当前用户信息1.

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

mysql线上查询之前要性能调优的技巧及示例

《mysql线上查询之前要性能调优的技巧及示例》文章介绍了查询优化的几种方法,包括使用索引、避免不必要的列和行、有效的JOIN策略、子查询和派生表的优化、查询提示和优化器提示等,这些方法可以帮助提高数... 目录避免不必要的列和行使用有效的JOIN策略使用子查询和派生表时要小心使用查询提示和优化器提示其他常

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I