From: | Michael Glaesemann <grzm(at)myrealbox(dot)com> |
---|---|
To: | Larry Rosenman <ler(at)lerctr(dot)org> |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: Query issue/8.0.1/Serendipity |
Date: | 2005-03-08 12:21:08 |
Message-ID: | a5c61556de7ac42a8e84e857dcff3988@myrealbox.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Larry,
Restating your SQL in a more reader-friendly form:
SELECT timestamp
FROM serendipity_entries e
, serendipity_category c
, serendipity_entrycat ec
LEFT OUTER JOIN serendipity_entryproperties ep_cache_extended
ON (e.id = ep_cache_extended.entryid
AND ep_cache_extended.property = 'ep_cache_extended')
LEFT OUTER JOIN serendipity_entryproperties ep_cache_body
ON (e.id = ep_cache_body.entryid
AND ep_cache_body.property = 'ep_cache_body')
LEFT OUTER JOIN serendipity_entryproperties ep_access
ON (e.id = ep_access.entryid
AND ep_access.property = 'ep_access')
LEFT JOIN serendipity_entryproperties ep_sticky
ON (e.id = ep_sticky.entryid
AND ep_sticky.property = 'ep_is_sticky')
WHERE e.timestamp >= 1109656800
AND e.timestamp <= 1112335200
AND e.timestamp <= 1110241185
AND e.isdraft = 'false'
AND ( ep_access.property IS NULL
OR ep_access.value = 'member'
OR ep_access.value = 'public'
OR (ep_access.value = 'private'
AND e.authorid = 1)
)
AND e.id = ec.entryid
AND c.categoryid = ec.categoryid
AND c.category_left BETWEEN 3 AND 4
I can see you're using a lot of left joins. You are beginning your left
joins off of ec, so I believe neither e nor c can be referenced as join
conditions. It might work if you reorder the first part of the FROM
clause as the following:
FROM serendipity_category c
, serendipity_entrycat ec
, serendipity_entries e
LEFT OUTER JOIN serendipity_entryproperties ep_cache_extended
(Though I can't be sure without seeing table definitions.)
It also appears you have a redundant e.timestamp constraint in the
WHERE clause: if e.timestamp is >= 1110241185 it's definitely going to
be <= 1112335200
Hope this helps. I find white space helps me read my own SQL much more
easily.
Michael Glaesemann
grzm myrealbox com
From | Date | Subject | |
---|---|---|---|
Next Message | Larry Rosenman | 2005-03-08 12:28:38 | Re: Query issue/8.0.1/Serendipity |
Previous Message | Larry Rosenman | 2005-03-08 12:17:16 | Re: Query issue/8.0.1/Serendipity |