加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

JCL DFSORT - Merge Dataset

(2011-08-02 16:00:54)
标签:

mainframe

分类: JCL

   上一篇博文主要是介绍了Sort dataset的功能,对于不同字段类型的记录,可以选择不同的参数来进行序。我们也可以将排序好的多个数据集里面的记录存放到一个数据集里面。这个功能就是今天要讲的Merge dataset.
   大家一定要注意在合并多个数据集时,一定要确保这些记录有同样的格式,并且这些记录通过相同的字段进行排序。你可以在一次合并很多数据集。下图是Merge控制语句,

   http://s2/middle/66961eeega9815fdafe71&690DFSORT Merge Dataset" TITLE="JCL DFSORT Merge Dataset" />


   下面是一个例子将两个文件中的记录merge到一个文件中(注意那两个文件中的记录已经排序过
 第一个输入文件记录,如下:             第二个输入文件中的记录,如下:             
 000001 ANDY      900                   000001 ERIC      800                       
 000002 MILLY     500                   000002 FRANK     600                       
 000003 RAYMOND   200                   000003 MAX       700                       
 000004 SUNNY     400                   000004 RAYMOND   1200                      
 000005 TOM       100                   000005 SARAH     1000                      
                                                                                   
 下面是JCL代码实现这一功能,将两个不同文件的记录合并到一个输出文件中。             
 000001 //TESTHZST JOB 'HANSEN ZENG',                                              
 000002 //             CLASS=X,                                                    
 000003 //             MSGCLASS=Y,                                                 
 000004 //             MSGLEVEL=(1,1),                                             
 000005 //             RESTART=JS010,                                              
 000006 //             NOTIFY=&SYSUID                                              
 000007 //JS010   EXEC PGM=SORT                                                    
 000008 //SORTIN01 DD  DSN=TESTHZ.SORTIN01.PSFILE,                                 
 000009 //             DISP=SHR                                                    
 000010 //SORTIN02 DD  DSN=TESTHZ.SORTIN02.PSFILE,                                 
 000011 //             DISP=SHR                                                    
 000012 //SORTOUT  DD  DSN=TESTHZ.SORTOUT.PSFILE,                                  
 000013 //             DISP=(OLD,KEEP,KEEP)                                        
 000014//SYSPRINT  DD  SYSOUT=*                                                    
 000015 //SYSOUT   DD  SYSOUT=*                                                    
 000016 //SYSIN    DD                                                           
 000017  MERGE FORMAT=CH,FIELDS=(1,10,A)                                           
 000018 /*                                                                         
 000019 //                                                                         
                                                                                   
                                                                                   
 输出文件的记录(TESTHZ.SORTOUT.PSFILE),如下:                                   
 000001 ANDY      900                                                              
 000002 ERIC      800                                                              
 000003 FRANK     600                                                              
 000004 MAX       700                                                              
 000005 MILLY     500                                                              
 000006 RAYMOND   200                                                              
 000007 RAYMOND   1200                                                             
 000008 SARAH     1000                                                             
 000009 SUNNY     400                                                              
 000010 TOM       100                                                              
 

 这是DFSORT中比较简单的功能,就是将不同的数据集中记录Merge到一个数据集中。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有