you can get the same performance improvements by passing a REF Cursor out to the 
client also. 

basically he is saying that if you are over a network particularly in a web 
application where you cant always control the speed of the internet access that the 
client is using and you do:

select column
from table
where column = 1;

Oracle will do a series of 'fetches' across SQLNET. Which it will get some records, 
then go back and request some more and so on... this means you have alot of network 
trips. Since your not getting everything at once. So you increase network traffic with 
the additional 'requests' and you increase wait time just going back and forth.

Its like a busdriver competing against a sports car driver to see who can get the most 
people to an end location. Bus is slow but can carry alot of people per trip and the 
sports car is faster but can only carry a few people per trip. 

So the inline view does more work up front on the database side:

select col
from (select col from table where x = 1)

so you are 'shrinking' the size of the table you are selecting from. 

Now the way I have done it is to pass a REF Cursor, which I think(though I have not 
tested it) gives even better performance. Why?

Well you are saying on the database side:

Get everything from this query and put it in the REF Cursor, then in one pass send the 
whole REF Cursor to the client. 

Also you need inline views to solve some questions. Such as how to get records M 
through N from a resultset. 
> 
> From: "VIVEK_SHARMA" <[EMAIL PROTECTED]>
> Date: 2003/07/16 Wed AM 07:54:25 EDT
> To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]>
> Subject: RE: inline views
> 
> Daniel, List
> 
> Can you give more detail with an EXAMPLE please ?
> 
> Thanks
> 
> 
> -----Original Message-----
> Sent: Friday, June 06, 2003 7:05 PM
> To: Multiple recipients of list ORACLE-L
> 
> I have used an inline view to reduce network traffic when retrieiving 
> data from a remote db. Instead of using a nested loop and making 
> multiple trips, it made 1 trip and brought over all of the data. The 
> query time was reduced from 30 minutes to 5 minutes.
> 
> -- 
> Daniel W. Fink
> http://www.optimaldba.com
> 
> 
> VIVEK_SHARMA wrote:
> 
> >Where are they advantageous to use & where not ?
> >
> >Thanks
> 
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> -- 
> Author: VIVEK_SHARMA
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 
> 

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: <[EMAIL PROTECTED]
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to