Re: Slow query with backwards index scan
| От | Craig James |
|---|---|
| Тема | Re: Slow query with backwards index scan |
| Дата | |
| Msg-id | 46ABA1AA.7020701@emolecules.com обсуждение исходный текст |
| Ответ на | Re: Slow query with backwards index scan (Tilmann Singer <tils-pgsql@tils.net>) |
| Ответы |
Re: Slow query with backwards index scan
|
| Список | pgsql-performance |
Tilmann Singer wrote: > * andrew@pillette.com <andrew@pillette.com> [20070728 21:05]: >> Let's try putting the sort/limit in each piece of the UNION to speed them up separately. >> >> SELECT * FROM ( >> (SELECT * FROM large_table lt >> WHERE lt.user_id = 12345 >> ORDER BY created_at DESC LIMIT 10) AS q1 >> UNION >> (SELECT * FROM large_table lt >> WHERE user_id IN (SELECT contact_id FROM relationships WHERE user_id=12345) >> ORDER BY created_at DESC LIMIT 10) AS q2 >> ORDER BY created_at DESC LIMIT 10; > > It's not possible to use ORDER BY or LIMIT within unioned queries. > > http://www.postgresql.org/docs/8.2/static/sql-select.html#SQL-UNION If I'm reading this documentation correctly, it *is* possible, as long as they're inside of a sub-select, as in this case. Craig
В списке pgsql-performance по дате отправления: