To be honest, it's fast, really fast. It would probably take you longer to 
create the zero length list than
  It would save in any processing time.

George

-----Original Message-----
From: u2-users-boun...@listserver.u2ug.org 
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Rick Nuckolls
Sent: Thursday, May 17, 2012 5:07 PM
To: U2 Users List
Subject: Re: [U2] SAVING UNIQUE ( multivalued)

UNION would definely be an alternative, but doing it against a needlessly long 
second list offends my Scotch genes. It is possible to create an active, zero 
length, selectlist programmatically, so perhaps I should write a little command 
to do that and and a MERGE.LIST UNION against it. 



-Rick

On May 17, 2012, at 1:47 PM, "George Gallen" <ggal...@wyanokegroup.com> wrote:

> What about ...
> 
> ----: P                                                                       
>   
> 0001: PA                                                                      
>   
> 0002: QSELECT <<C2,file>> * SAVING <<C3,field number>>                        
>   
> 0003: SAVE.LIST UNIQUE 
> 0004: GET.LIST UNIQUE TO 1
> 0005: MERGE.LIST 1 UNION 1
> 0006: SAVE.LIST UNIQUE
> 0007: GET.LIST UNIQUE
> 
> (The MERGE.LIST will sort and dedupe)
> 
> 
> 0004: sh -c "/usr/bin/sort -uo '&SAVEDLISTS&/UNIQUE' '&SAVEDLISTS&/UNIQUE'"   
>   
> 0005: GET.LIST UNIQUE
> 
> -----Original Message-----
> From: u2-users-boun...@listserver.u2ug.org 
> [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Rick Nuckolls
> Sent: Thursday, May 17, 2012 4:38 PM
> To: 'U2 Users List'
> Subject: Re: [U2] SAVING UNIQUE ( multivalued)
> 
> This does present a challenge,
> 
> The following (non-portable solution works)
> :ED VOC MUNIQUE                                                               
>   
> 5 lines long.                                                                 
>   
> 
> ----: P                                                                       
>   
> 0001: PA                                                                      
>   
> 0002: QSELECT <<C2,file>> * SAVING <<C3,field number>>                        
>   
> 0003: SAVE.LIST UNIQUE                                                        
>   
> 0004: sh -c "/usr/bin/sort -uo '&SAVEDLISTS&/UNIQUE' '&SAVEDLISTS&/UNIQUE'"   
>   
> 0005: GET.LIST UNIQUE
> 
> Or, I suppose that one could also
> 
> EDIT.LIST GARBAGE                                                             
>  
> New record.                                                                   
>   
> 
> ----: I                                                                       
>   
> 0001= KAJDF;LJASDLF;KJADSL;FKJASDL;FJKASLD;JFALS;DJFLASKDF                    
>   
> 0002=                                                                         
>   
> Bottom at line 1.                                                             
>   
> ----:                                                                         
>   
> Top.                                                                          
>   
> ----: FI                                                                      
>   
> "GARBAGE" filed in file "&SAVEDLISTS&".                                       
>   
> :GET.LIST GARBAGE TO 1                                                        
>   
> 
> 1 record(s) selected to SELECT list #1.                                       
>   
> :QSELECT IU * SAVING 19                                                       
>   
> 
> 32987 record(s) selected to SELECT list #0.                                   
>   
> ::MERGE.LIST 0 DIFF 1                                                         
>   
> 
> 90 record(s) selected to SELECT list #0.                                      
>   
> ::  
> 
> ----------------
> Be nice if there was MV support of 'SAVING UNIQUE', or a cleaner syntactic 
> way to use MERGE.LIST to dedupe.
> 
> -Rick
> 
> 
> 
> -----Original Message-----
> From: u2-users-boun...@listserver.u2ug.org 
> [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Chris Austin
> Sent: Thursday, May 17, 2012 1:20 PM
> To: u2-users@listserver.u2ug.org
> Subject: Re: [U2] SAVING UNIQUE ( multivalued)
> 
> 
> I usually get my exploded list and then DEDUPE using the following:
> 
> LOCATE  VALUE.TO.FIND IN UNIQUE.LIST BY "AL" SETTING POS ELSE
> UNIQUE.LIST = INSERT(UNIQUE.LIST,1,POS,0,VALUE.TO.FIND)
> END
> 
> This puts everything in a nice ARRAY called UNIQUE.LIST, I then can use a FOR 
> loop to loop through as needed.
> 
> Chris
> 
> 
>> To: u2-users@listserver.u2ug.org
>> From: wjhon...@aol.com
>> Date: Thu, 17 May 2012 16:13:31 -0400
>> Subject: Re: [U2] SAVING UNIQUE  ( multivalued)
>> 
>> 
>> You have two issues.
>> One is to create a list from an exploded multi-value
>> The other issue, is to dedupe that list.
>> 
>> Without using something like REFORMAT I don't think you can get the two 
>> issues resolved at once.
>> Qselect does not allow Unique
>> So
>> QSELECT MYFILE SAVING 2
>> will explode the multi-values, but it won't dedupe them.
>> 
>> 
>> 
>> -----Original Message-----
>> From: Rick Nuckolls <r...@lynden.com>
>> To: 'U2 Users List' <u2-users@listserver.u2ug.org>
>> Sent: Thu, May 17, 2012 1:06 pm
>> Subject: [U2] SAVING UNIQUE ( multivalued)
>> 
>> 
>> Does anyone know a trick to achieve the equivalent of
>> SELECT filename SAVING UNIQUE fieldname
>> When "fieldname" is the name of a multivalued field, and I want a list  of 
>> all 
>> he unique values for that field?
>> The syntax above does not explode the values, but just looks at the whole 
>> field.
>> I suppose that I can do a LIST with a BY.EXP & a BREAK.ON, but perhaps I am 
>> issing something...
>> Thanks,
>> Rick Nuckolls
>> ynden Inc.
>> 
>> ______________________________________________
>> 2-Users mailing list
>> 2-us...@listserver.u2ug.org
>> ttp://listserver.u2ug.org/mailman/listinfo/u2-users
>> 
>> _______________________________________________
>> U2-Users mailing list
>> U2-Users@listserver.u2ug.org
>> http://listserver.u2ug.org/mailman/listinfo/u2-users
>                         
> _______________________________________________
> U2-Users mailing list
> U2-Users@listserver.u2ug.org
> http://listserver.u2ug.org/mailman/listinfo/u2-users
> _______________________________________________
> U2-Users mailing list
> U2-Users@listserver.u2ug.org
> http://listserver.u2ug.org/mailman/listinfo/u2-users
> _______________________________________________
> U2-Users mailing list
> U2-Users@listserver.u2ug.org
> http://listserver.u2ug.org/mailman/listinfo/u2-users
_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to