当前位置: 首页 > news >正文

06_SPOOL导出_表头模式

–#############################################################################
–#############################################################################

–设置oracle参数信息
–设置字段间隔符,默认为空格
SET COLSEP ‘|’
–设置不列出命令清单
SET ECHO OFF
–设置不显示由查询返回的记录总数
SET FEEDBACK OFF
–设置不打印列标题
SET HEADING OFF
–设置查询结果不分页显示
SET PAGESIZE 0
–设置查询结果每一行显示的字符数
SET LINESIZE 600
–设置禁止在屏幕上显示查询输出结果
SET TERMOUT OFF
–设置去除每行显示结尾的空格
SET TRIMOUT ON
–设置对每一行的前后空格进行滤除
SET TRIMSPOOL ON
–设置输出数据的格式
COLUMN amount1 FORMAT 99999999999999.99
COLUMN amount2 FORMAT 99999999999999.99
COL today NEW_VALUE today NOPRINT

SELECT a.crndat today
FROM ds.sysctl a
JOIN mis.dtimes b
ON a.crndat = b.daykey
WHERE a.appnam=‘SSS’;

–每月1、15日凌晨生成要还款数据,传入日期为批量日期T-1
–COL daystr NEW_VALUE daystr noprint
–COL daycut NEW_VALUE daycut noprint

–select to_char(to_date(’&1’,‘YYYYMMDD’)+1,‘yyyymmdd’) daystr,
— to_char(to_date(’&1’,‘YYYYMMDD’)+1,‘dd’) daycut
– from dual;
–设置输出文件
–spool $HOME/ZRTP_CA/data/LOAN_NO_ACCT.&daystr.DAT
–处理分区
–declare
– TODAY varchar2(8); --明日
– TOMORROW varchar2(8); --明日
– MONTH_END_DATE varchar2(8); --月末
– DELETE_DAY varchar2(8); --删除日期 上两个月一号
– DATE_FLAG varchar2(8); --日期标志
– DORP_SQL1 varchar(200);
– DORP_SQL2 varchar(200);
– CREATE_SQL varchar(200);
–begin
– --先删除当日的分区以重跑
– begin
– select to_char(MONTH_END_DATE, ‘YYYYMMDD’),
– to_char(a.daykey, ‘YYYYMMDD’),
– to_char(a.daykey + 1, ‘YYYYMMDD’),
– to_char(add_months(a.daykey, -1), ‘YYYYMMDD’)
– into MONTH_END_DATE, TODAY, TOMORROW, DELETE_DAY
– from dw.dtimes a
– where daykey = to_date(’&1’,‘YYYYMMDD’);
– DORP_SQL1 := ‘alter table mis.af_actbal_pj drop partition af_actbal_pj_’||TODAY;
– execute immediate DORP_SQL1;
– exception
– when others then
– NULL;
– dbms_output.put_line(SQLERRM || DORP_SQL1);
– end;
– --建立当日分区
– begin
– CREATE_SQL := ‘alter table mis.af_actbal_pj add partition af_actbal_pj_’||TODAY
– || ’ values less than (to_date(’’’ || TOMORROW ||
– ‘’’,’‘YYYYMMDD’’))’;
– execute immediate CREATE_SQL;
– exception
– when others then
– NULL;
– dbms_output.put_line(SQLERRM || CREATE_SQL);
– end;
– --删除一个月之前的分区
– begin
– DATE_FLAG:=DELETE_DAY;
– if (DATE_FLAG != to_char(last_day(to_date(DATE_FLAG,‘YYYYMMDD’)),‘YYYYMMDD’)) then
– begin
– DORP_SQL2 := ‘alter table mis.af_actbal_pj drop partition af_actbal_pj_’||DATE_FLAG;
– execute immediate DORP_SQL2;
– exception
– when others then
– NULL;
– dbms_output.put_line(SQLERRM || DORP_SQL2);
– end;
– end if;
– end;
–end;
–/

prompt 数据处理开始…
prompt =======================================================================
delete from mis.af_actbal_pj
where crndat = to_date(’&daykey’, ‘YYYYMMDD’);
prompt =======================================================================
prompt 开始出具报表

–设置输出文件
spool gj_retfix.txt

–查询语句
select t.supbak,r.orgidt,r.dpttyp,r.curbal,r.orgidt||r.depnum||r.curcde||r.dpttyp||r.resbit||r.seqnu
m||r.chkbit,r.intrat,r.opndat,r.valdat,r.expdat
from retfix r join tmporg t on t.orgidt=r.orgidt
where r.dpttyp=‘96’ and r.dptprd=‘36’ and r.actsts=‘1’
and r.valdat between ‘2007-01-01’ and ‘&daystr’
;

–输出完成
spool off;

prompt 出具报表结束
prompt =======================================================================

–退出
exit

相关文章:

  • jetty8的多实例部署(LT项目开发参考)
  • 07_oracle正则表达式语法
  • 测试比json更快更小的二进制数据传输格式Msgpack [pythono MessagePack 版本]
  • 01_excel基础知识1
  • 学习Trie树,处理“海量”数据
  • hibernate的native sql查询
  • 类的成员变量和属性Fields and Properties in class
  • 一个简单的JavaScript Map
  • Introduction to the Java Persistence API
  • 电脑开机后总是提示对话框:服务器正在运行中
  • hibernate第一天:环境搭建
  • 创建自己的yum源
  • hibernate第二天:hibernate原理
  • LINUX系统监控
  • hibernate第三天:O/R MAPPING常见框架
  • 自己简单写的 事件订阅机制
  • Centos6.8 使用rpm安装mysql5.7
  • Create React App 使用
  • ECS应用管理最佳实践
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • Promise面试题2实现异步串行执行
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • Vue2 SSR 的优化之旅
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • Vue--数据传输
  • 笨办法学C 练习34:动态数组
  • 关键词挖掘技术哪家强(一)基于node.js技术开发一个关键字查询工具
  • 京东美团研发面经
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 新书推荐|Windows黑客编程技术详解
  • 你对linux中grep命令知道多少?
  • ​Linux·i2c驱动架构​
  • #HarmonyOS:软件安装window和mac预览Hello World
  • ()、[]、{}、(())、[[]]命令替换
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (C++17) optional的使用
  • (Oracle)SQL优化技巧(一):分页查询
  • (多级缓存)缓存同步
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (六)激光线扫描-三维重建
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • ***利用Ms05002溢出找“肉鸡
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • .net(C#)中String.Format如何使用
  • .NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
  • .net中生成excel后调整宽度
  • [ 英语 ] 马斯克抱水槽“入主”推特总部中那句 Let that sink in 到底是什么梗?
  • [ 转载 ] SharePoint 资料
  • []常用AT命令解释()
  • [2018][note]用于超快偏振开关和动态光束分裂的all-optical有源THz超表——
  • [C++]priority_queue的介绍及模拟实现
  • [CISCN2019 华东北赛区]Web2
  • [js]js设计模式小结
  • [LeetCode] 196. 删除重复的电子邮箱
  • [ListView.View=List]的垂直滚动条