Monday, September 26, 2011

SORT - to select records upon occurence

To select records based on key depending upon the occurence 


Example : 1

//STEP010  EXEC PGM=ICETOOL                
//TOOLMSG  DD SYSOUT=*                      
//DFSMSG   DD SYSOUT=*                      
//SYSPRINT DD DUMMY                         
//IN       DD *                             
 1111111111                                
 1111111111                                
 1111111111                                
 1111111111                                
 2222222222
 3333333333
 3333333333
/*                                          
//OUT      DD SYSOUT=*   
//TOOLIN   DD *                                  
 SELECT FROM(IN) TO(OUT) ON(1,10,CH) HIGHER(3)  
/*                                               

The output will be as follows :

 1111111111                                
 1111111111                                
 1111111111                                
 1111111111                                

It select those records that occurs more than 3 times.


Example : 2

//STEP010  EXEC PGM=ICETOOL                
//TOOLMSG  DD SYSOUT=*                      
//DFSMSG   DD SYSOUT=*                      
//SYSPRINT DD DUMMY                         
//IN       DD *                             
 1111111111                                
 1111111111                                
 1111111111                                
 1111111111                                
 2222222222
 3333333333
 3333333333
/*                                          
//OUT      DD SYSOUT=*   
//TOOLIN   DD *                                  
 SELECT FROM(IN) TO(OUT) ON(1,10,CH) LOWER(3)  
/*                                               

The output will be as follows :

 2222222222
 3333333333
 3333333333

It select those records that occurs less than 3 times.


Example : 3

//STEP010  EXEC PGM=ICETOOL                
//TOOLMSG  DD SYSOUT=*                      
//DFSMSG   DD SYSOUT=*                      
//SYSPRINT DD DUMMY                         
//IN       DD *                             
 1111111111                                
 1111111111                                
 1111111111                                
 1111111111                                
 2222222222
 3333333333
 3333333333
/*                                          
//OUT      DD SYSOUT=*   
//TOOLIN   DD *                                  
 SELECT FROM(IN) TO(OUT) ON(1,10,CH) EQUAL(2)  
/*                                               

The output will be as follows :

 3333333333
 3333333333

It select those records that occurs 2 times.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.