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

JCL DFSORT - Sort Dataset

(2011-07-31 18:17:32)
标签:

mainframe

分类: JCL

   DFSORT is IBM's high-performance sort,merge,copy,analysis and reporting product for z/OS.

   这篇文章主要是看DFSORT的sort record的功能,下面是DFSORT的控制语句。

   http://s10/middle/66961eeega95863ad1f39&690DFSORT Sort Dataset" TITLE="JCL DFSORT Sort Dataset" />
SORT FIELDS里面的4个参数分别表示不同的意思,现在只要来解释各个参数的含义。

1. 第一个参数表示你要sort的字段的起始位置。

2. 第二个参数表示你要sort的字段的长度。

3. 第三个参数表示你要sort的字段的类型。

   CH : Character               BI : Binary

   FI : Fixed-point             ZD : Zoned Decimal

   PD : Packed Decimal          FS : Floating Sign

4. 第四个参数表示你要sort的方式(升序(A) or 降序(D)) 

 

例一  按照升序sort field

输入文件的内容如下,               输出的文件的内容如下,

=COLS> ----+----1----+----2       =COLS> ----+----1----+----2 
000001 TOM       100              000001 ANDY      900        
000002 SUNNY     400              000002 ERIC      800        
000003 MILLY     500              000003 FRANK     600        
000004 MICHAEL   200              000004 MAX       700        
000005 ANDY      900              000005 MICHAEL   200        
000006 PETER     1000             000006 MILLY     500        
000007 ERIC      800              000007 PETER     1000       
000008 RAYMOND   1200             000008 RAYMOND   1200       
000009 FRANK     600              000009 SUNNY     400        
000010 MAX       700              000010 TOM       100        

实现这一功能的JCL,如下:

//TESTHZST JOB 'HANSEN ZENG',                                  
//             CLASS=X,                                        
//             MSGCLASS=Y,                                     
//             MSGLEVEL=(1,1),                                 
//             RESTART=JS010,                                  
//             NOTIFY=&SYSUID                                  
//**************************************************************
//*  SORT FIELD FROM COLUMN 1 TO 10                            
//**************************************************************
//JS010   EXEC PGM=SORT                                        
//SORTIN   DD  DSN=TESTHZ.SORTIN.PSFILE,                       
//             DISP=SHR                                        
//SORTOUT  DD  DSN=TESTHZ.SORTOUT.PSFILE,                      
//             DISP=(NEW,CATLG,DELETE),                        
//             UNIT=3390,                                      
//             SPACE=(TRK,(20,10)),                            
//             RECFM=FB,                                       
//             LRECL=20,                                       
//             BLKSIZE=200                                     
//SYSPRINT DD  SYSOUT=*                                        
//SYSOUT   DD  SYSOUT=*                                        
//SYSIN    DD                                               
 SORT FIELDS=(1,10,CH,A)                                       
/*                                                             
//                                                             
 

   对于字段进行升序或者降序排列,可以参考上面的例子。只是我们在选择字段的类型是要注意,对于数字排序,有可能是PD,也有可能是ZD,大家要注意了。我们也可以对于多个字段进行排序,例如有个字段值一样,可以通过另一个字段来进行排序。例如,将上个例子的sort语句改成这样SORT FIELDS=(1,10,CH,A,11,10,CH,D).来看一下输入文件和输出文件的结果。

输入文件的内容如下:            输出文件的内容如下:

000001 TOM       100            000001 ANDY      900   
000002 SUNNY     400            000002 ERIC      800   
000003 TOM       500            000003 FRANK     600   
000004 RAYMOND   200            000004 MAX       700   
000005 ANDY      900            000005 RAYMOND   200   
000006 TOM       1000           000006 RAYMOND   1200  
000007 ERIC      800            000007 SUNNY     400   
000008 RAYMOND   1200           000008 TOM       500   
000009 FRANK     600            000009 TOM       1000  
000010 MAX       700            000010 TOM       100   
 

   我们可以在尝试在模拟环境对一些数字进行排序,想了解更详细的sort信息,请关注DFSORT reference第二章:Sort Copy and Merge Dataset。 

0

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

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

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

新浪公司 版权所有