|
----- Original Message ----- From: "R. Bruce Hoffman, Jr." <rbruceh@attglobal.net> To: <MIDRANGE-L@midrange.com> Sent: Thursday, June 29, 2000 18:23 Subject: Re: SQL Question >Select a.OrderNo, a.Customer, b.Seqno, b.Product >From Orders a Join Items b >Where b.Seqno = > ( Select Min(c.Seqno) From Items c > Where c.OrderNo = a.OrderNo > Group by c.OrderNo ) > > sidebar... you don't (shouldn't) need the the group by clause in a > correlated subquery as the selection is already limited to a single order > number. In V4R2 (definitely) and up you don't. The requirement here is > that the correlated subquery return a single value, and with just the where > clause, it does so. You're absolutely correct Bruce. It isn't a requirement. Just keep in mind that on the AS/400, the access plan is determined by the query optimizer. In the above example, the GROUP BY clause causes the optimizer to utilize a processing method referred to as "Index Skip Key processing". This improves performance by eliminating the need to process all index key values for the group, if there is an appropriate index built over the (OrderNo, SeqNo) column pair. In other words, the query doesn't have to check _every_ item line in order to determine the one with the lowest sequence number. Just a reminder for anyone else who happens to be reading - the SQL statement that we are referring to has an incomplete JOIN. The correct version was posted in a follow-up message to the list. Regards, John Taylor Canada +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
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.