× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Alfred,

Yes, everything (I think?) you can do with CTE's you can do with Nested
Table Expressions (NTE?)

I like CTE better as I think they are a little cleaner, particularily if
you use a CTE in another CTE like so:

With dups as (select meter, count(distinct premise)       
              from mike                                   
              group by meter                              
              having count(distinct premise) > 1          
             ),                                           
     results as ( Select distinct premise, meter          
                  From mike                               
                  Where meter in (select meter from dups) 
                )                                         
select * from results                                     


The NTE version would be:
select *                                                            
from  ( Select distinct premise, meter                              
        From mike                                                   
        Where meter in (select meter                                
                        from (select meter, count(distinct premise) 
                              from mike                             
                              group by meter                        
                              having count(distinct premise) > 1    
                             ) as dups                              
                       )                                            
      ) as results                                                  


HTH,

Charles Wilt
--
iSeries Systems Administrator / Developer
Mitsubishi Electric Automotive America
ph: 513-573-4343
fax: 513-398-1121
  

-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx 
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Alfredo Delgado
Sent: Wednesday, October 04, 2006 11:02 AM
To: Midrange Systems Technical Discussion
Subject: Re: SQL - selecting issue

You're right, I glossed over that. I'd have used different 
notation but 
it'd execute the same way as the statements you provided. The index 
adviser in visual explain suggested creating a binary radix 
index over 
meter, premise. It replaced a table scan / temp hash table / 
temp hash 
table probe with an index probe. That about halved the 
execution time. 
I'd be interested in the performance results if Mike decides 
to try it out.

SELECT DISTINCT Premise, Meter
FROM ALFREDLIB.PREMISE
WHERE Meter IN (    SELECT Meter
                    FROM ALFREDLIB.PREMISE
                    GROUP BY Meter
                    HAVING count( distinct Premise ) > 1 )

Thanks,
Alfred

Wilt, Charles wrote:

No it didn't.

SELECT Premise, Meter   
FROM mike               
GROUP BY Premise, Meter 
HAVING count( Seq ) > 1 

PREMISE  METER 
  X     9,999 
  Y     9,998 


He wants:
PREMISE  METER
  X     9,999
  Z     9,999

He's looking for duplicate meter numbers across premises.

Your statement gives premises were the same meter appears twice.  Not
the same thing.


HTH,

Charles Wilt
--
iSeries Systems Administrator / Developer
Mitsubishi Electric Automotive America
ph: 513-573-4343
fax: 513-398-1121
 

 

-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx 
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of 
Alfredo Delgado
Sent: Wednesday, October 04, 2006 9:45 AM
To: Midrange Systems Technical Discussion
Subject: Re: SQL - selecting issue

This worked for me on the test data you provided:

SELECT Premise, Meter
FROM ALFREDLIB.PREMISE
GROUP BY Premise, Meter
HAVING count( Sequence ) > 1

Thanks,
Alfred

Smith, Mike wrote:

   

Charles,
Yes I must have had a typo of some sort.  I copied from your 
     

last email
   

and it is working and working and working.  I'm still waiting on
results.   This may work, but I'm not sure it is going to be the
ultimate solution.  My file has approximately 67,000 records.  
This was a recent copy as it still keeps on going- much like the
energizer bunny.   
Query running. 0 records selected, 28788150 processed. 

Michael Smith
iSeries.mySeries.


     


-- 
Alfredo Delgado
Laird Plastics -- Web Developer
6800 Broken Sound Pkwy; Suite 150
Boca Raton, Florida 33487


-- 
This is the Midrange Systems Technical Discussion 
(MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.




As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.