> > Without I_PBMCLAIM_DATESBM instead of scanning a few months of data
> > it's scanning a few years.
> 
> Keep in mind and make sure, that:
> 
> * You test in a fetch all rows scenario. While a certain index might make
> execution of a statement look fast when fetching the first bunch of rows
> automatically due to a client request, things may look different compared to
> non-indexed access when you fetch all records

A tip,

The easiest way I have found to measure the fetch all/total query execution is 
to enclose the candidate query in a SELECT COUNT(*) FROM () as in:

SELECT COUNT(*)
FROM (
  {INSERT YOUR QUERY HERE}
)

The advantage of this approach is that the entire query is processed on the 
server and only a single row is returned.

Otherwise, as Thomas stated, you may end up measuring only the time it takes to 
return the first batch of rows, not the entire query -- which can have 
dramatically different performance profile (it may take 1s to process the first 
batch of rows, but 10m to process the next 10 -- due to the query 
construction/sub-queries).


Sean

Reply via email to