oracle 当前年到指定年的年度范围求取

如下面公式所示,求取2015到当前年(2018)的年度范围,当前年是由系统获取的,用到了sysdate和函数to_char,to_date。

当然,当前年也可以换成指定年份

SELECT TO_CHAR(ADD_MONTHS(TO_DATE(‘2015‘, ‘yyyy‘), (ROWNUM - 1) * 12), ‘yyyy‘) as nd
FROM DUAL
CONNECT BY ROWNUM <=
months_between(to_date(to_char(sysdate,‘yyyy‘),‘yyyy‘) ,
to_date(‘2015‘, ‘yyyy‘)) / 12 + 1

结果如下图:

原文地址:https://www.cnblogs.com/huodige/p/8962916.html

时间: 2024-10-09 01:48:52

oracle 当前年到指定年的年度范围求取的相关文章

oracle 重置序列从指定数字开始的方法详解

原文 oracle 重置序列从指定数字开始的方法详解 重置oracle序列从指定数字开始 declare n number(10); v_startnum number(10):=10000001;--从多少开始 v_step number(10):=1;--步进 tsql varchar2(200); v_seqname varchar2(200):='MIP_JF_SEQUENCE';--序列名 begin execute immediate 'select '||v_seqname||'.

Oracle BIEE某列指定单元格进行合并展示

Oracle BIEE某列指定单元格进行合并展示的最终效果,见下图: 具体操作为: 1. 将该列 列属性-列格式-值校正 设置为禁用,此时BIEE会默认将该列中相邻行且值一样的单元格进行合并显示: 2. 增加隐藏排序列(设置 列属性-列格式 为隐藏,同时点亮该列排序标识),目的是使得需要合并的记录在相邻行: 此时,BIEE会将排序列值相同的行中,对目标列中相应行进行合并单元格显示. 注意:BIEE默认从左至右依次对合并的行记录渐渐进行分割,因此需要保证行中值不同的列出现在需要合并单元格的列的右侧

Oracle生成查询包含指定字段名对应的所有数据表记录语句

应用场合:已知字段名字,查询数据库中所有数据表中包含该字段名的所有数据表 操作办法:指定字段名,数据库表用户,执行下面查询语句即可 --Oracle生成查询包含指定字段名对应的所有数据表记录语句 declare mycolumnname VARCHAR(255):='userid';--定义要查询的字段名变量,运行前修改成您要查询的字段名myownername VARCHAR(255):='system';--定义要查询的数据库用户名变量,运行前修改成您要查询的数据库用户名mystring NV

Oracle使用游标查询指定数据表的所有字段名称组合而成的字符串

应用场合:参考网上查询数据表的所有字段名代码,使用游标生成指定单个表的所有字段名跟逗号组成的用于select  逗号隔开的字段名列表 from字符串等场合. 查询结果输出如下: 当前数据表TB_UD_USER的字段列表字符串为AH,BIRTHPLACE,BM,CELLPHONE,CJGZRQ,DEPARTMENT2,DJJID,GZCX,GZKH,GZSFZH,HJDZ,HYZK,ID,JHRQ,JTZZ,LAFX_LD,LJDZ,LLY,LXDH,NAME,NXDH,POLICENUMBER,

查看Oracle表中的指定记录在数据文件中的位置

查看Oracle表中的指定记录位置select rowid,user_id from sshr.xx_user where user_id=3010586 select rowid,       dbms_rowid.rowid_object(rowid) object_id,              dbms_rowid.rowid_relative_fno(rowid) file_id,              dbms_rowid.rowid_block_number(rowid) b

Oracle 11g数据库的分区表扩展(按年度)

Oracle 11g数据库的分区表扩展(按年度) 一般一张表超过2G的大小,Oracle推荐使用分区表.oracle 11g支持自动分区,也可按年度.季度.月份手动扩展分区. 有一张分区表定义如下,需扩展2020年分区.CREATE TABLE US_REAL.T_TRADE(ID NUMBER(14) NOT NULL,TRADE_NO VARCHAR2(20 BYTE) NOT NULL,AMOUNT NUMBER(12,2),-- OTHER)TABLESPACE TS_US_REALPC

Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份

#!/bin/bash #设置Oracle数据库运行账号及oracle的系统环境变量 export ORACLE_BASE=/data/oracle export ORACLE_HOME=$ORACLE_BASE/product/10g export ORACLE_SID=test export PATH=$ORACLE_HOME/bin:$HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/li

Linux下自动备份Oracle数据库并删除指定天数前的备份

Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用户登录服务器 mkdir -p /backup/oracledata #新建Oracle数据库备份目录 chown -R oracle:oinstall /backup/oracledata -R #设置目录权限为oinstall用户组的oracle用户(用户oracle与用户组oinstall是在安装Or

centos6.5下oracle自动备份删除指定天数的文件

第一步先做一个备份 #!/bin/sh export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 export ORACLE_SID=orcl export LD_LIBRARY_PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin //注意是冒号 rq=`date '+%Y%M%D%H%M'` /home/oracle/app/ora