Is there a solution to make it faster?
At the end I need only in the query the id_status =4 and 6, but if I write
in the sql query (where condition) where id_status in (4,6), the explain
says the same(the slow version).

For example:
SELECT count(  FROM orders o
                                   INNER JOIN report r ON
                                   INNER JOIN status s ON
                                   INNER JOIN contact c ON
                                   INNER JOIN endkunde e ON
                                   INNER JOIN zufriden z ON
                                   INNER JOIN plannung v ON
                                   INNER JOIN mpsworker w ON
                                   INNER JOIN person p ON = w.id_person
                                   WHERE o.id_status in (4,6);

The result for this query is also without index searches.

I really have to make this query a little more faster. Suggestions?


----- Original Message -----
From: "Tom Lane" <[EMAIL PROTECTED]>
To: "Andrei Bintintan" <[EMAIL PROTECTED]>
Sent: Tuesday, October 19, 2004 7:52 PM
Subject: Re: [PERFORM] Index not used in query. Why?

> "Andrei Bintintan" <[EMAIL PROTECTED]> writes:
> > Hi to all! I have the following query. The execution time is very big,
> > doesn't use the indexes and I don't understand why...
> Indexes are not necessarily the best way to do a large join.
> > If I use the following query the indexes are used:
> The key reason this wins seems to be that the id_status = 4 condition
> is far more selective than id_status > 3 (the estimates are 52 and 36967
> rows respectively ... is that accurate?) which means that the second
> query is inherently about 1/700th as much work.  This, and not the use
> of indexes, is the fundamental reason why it's faster.
> regards, tom lane
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])

Reply via email to