[EMAIL PROTECTED] wrote:
> I have this function in my C#.NET app that goes out to find the
> business units for each event and returns a string (for my report).
> I'm finding that for larger reports it takes too long and times out.
> 
> Does anyone know how I can speed this process up?  Is this code very
> tight or could it be cleaner?  thanks in advance for your help, this
> is a big issue used on several reports.

Perhaps try "EXPLAIN ANALYZE" on this query, given a valid event ID:

            SELECT     Distinct Companies.Name
                        FROM         Companies INNER JOIN
                      ExpenseAllocations ON Companies.ID =
ExpenseAllocations.BusinessUnitID
                        WHERE     (ExpenseAllocations.EventID =
@EventID)
                        ORDER BY Companies.Name DESC


#######
Do the columns used in the join and WHERE clause have indexes?

It's also possible the optimization needs to happen at a different level. 
Perhaps you are frequently
looking up the same results in a large report, or throughout the day.

If this part doesn't need to be up-to-second fresh, perhaps your application 
could
cache some of the results of this function, instead of repeatedly asking the 
database
to recompute it.

   Mark

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to