Oracle数据库中如何获取当前年下的01- 12 个月 并用1/12 -12/12

简介: Oracle数据库中如何获取当前年下的01- 12 个月 并用1/12 -12/12

1:

第一种:
SELECT TO_CHAR(ADD_MONTHS(TO_DATE(CONCAT('2022','0101'), 'YYYYMMDD'), LEVEL - 1), 'mm') || '月' AS month
FROM DUAL
CONNECT BY LEVEL <= 12
 第二种:
  SELECT TO_CHAR(ADD_MONTHS(DATE '20220101', LEVEL - 1), 'mm') || '月' AS month
FROM DUAL
CONNECT BY LEVEL <= 12
第三种: 不显示 0 
SELECT TO_CHAR(ADD_MONTHS(TO_DATE(CONCAT('2023','0101'), 'YYYYMMDD'), LEVEL - 1), 'fmMonth') AS month
    FROM DUAL
    CONNECT BY LEVEL <= 12

执行结果:

f01ca358477c4654a083ec49178f27bf.png

2:个人使用

SELECT A.month AS 每年月份 ,nvl(B.目标值,0) AS 目标值, NVL(B.完成率,0) AS 完成率 from(
SELECT TO_CHAR(ADD_MONTHS(TO_DATE(CONCAT('2022','0101'), 'YYYYMMDD'), LEVEL - 1), 'mm') || '月' AS month
FROM DUAL
CONNECT BY LEVEL <= 12) A
left join 
(SELECT 
NVL((round(SUBSTR(STAT_TIME,5,6)/12* 100,2)),0) AS 目标值,
NVL(REFORM_TASK_COM_RATE,0) AS 完成率,
SUBSTR(STAT_TIME,5,6)|| '月'  AS 每年月份
FROM  BRAIN.DM_ZHGL_REFORM_TASK_INFO 
WHERE  SUBSTR(STAT_TIME,1,4) =  2022) 
B 
ON A.month = B.每年月份

结果:

51b12c525b2c44f3960d534384a6a769.png

3:当前年下的 每个月,以及每个月份,除以12

SELECT
  TO_CHAR(ADD_MONTHS(TO_DATE(CONCAT(2022 ,'0101'), 'YYYYMMDD'), LEVEL - 1), 'mm') || '月' AS month,
  ROUND((LEVEL - 1) / 11.0 * 100, 2) AS 目标值
FROM
  DUAL
CONNECT BY
  LEVEL <= 12;

结果:

f4c90a6bdc90473b8b7ed06fae776eeb.png


目录
相关文章
|
5天前
|
SQL Oracle 安全
Oracle11g更改数据库名(详细教程)
Oracle11g更改数据库名(详细教程)
15 1
|
2天前
|
Oracle 关系型数据库 MySQL
实时计算 Flink版操作报错合集之采集oracle的时候报ORA-65040:不允许从可插入数据库内部执行该操作如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
20 3
|
2天前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用合集之可以通过配置Oracle数据库的schema注册表来监测表结构的变化吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
10 1
|
5天前
|
Oracle 关系型数据库 数据库
Oracle数据库协议适配器错误解决方法
Oracle数据库协议适配器错误解决方法
12 2
|
5天前
|
存储 Oracle 关系型数据库
实验三 Oracle数据库的创建和管理
实验三 Oracle数据库的创建和管理
15 1
|
5天前
|
SQL Oracle 关系型数据库
实验一 安装和使用Oracle数据库
实验一 安装和使用Oracle数据库
16 1
|
5天前
|
Oracle Java 关系型数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
【服务器】python通过JDBC连接到位于Linux远程服务器上的Oracle数据库
17 6
|
3天前
|
关系型数据库 MySQL API
实时计算 Flink版产品使用合集之可以通过mysql-cdc动态监听MySQL数据库的数据变动吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
20 0
|
5天前
|
关系型数据库 MySQL 数据库
docker MySQL删除数据库时的错误(errno: 39)
docker MySQL删除数据库时的错误(errno: 39)
25 0
|
5天前
|
Java 关系型数据库 MySQL
【MySQL × SpringBoot 突发奇想】全面实现流程 · xlsx文件,Excel表格导入数据库的接口(下)
【MySQL × SpringBoot 突发奇想】全面实现流程 · xlsx文件,Excel表格导入数据库的接口
19 0