Re: tsearch2 query
От | Oleg Bartunov |
---|---|
Тема | Re: tsearch2 query |
Дата | |
Msg-id | Pine.LNX.4.64.0810022026080.15810@sn.sai.msu.ru обсуждение исходный текст |
Ответ на | tsearch2 query ("Matthew Terenzio" <mterenzio@gmail.com>) |
Список | pgsql-general |
On Thu, 2 Oct 2008, Matthew Terenzio wrote: > There are less than 20,000 records being searched here, but the query takes > several minutes. > > I know this may not be enough info, but would one suggest I optimize the > query or put my attention towards other areas. > > > SELECT id,date,headline as head,headline(body,q),rank(vectors,q),timestamp > FROM stories,to_tsquery('$query') AS q WHERE vectors @@ q ORDER BY $sort > DESC OFFSET $offset LIMIT 20 > This is common mistake, use subselect and you'll be happy. Explanation: headline() is very cost operation, so in your query you obtain headline() for *ALL* results, while you need to do this only for 20 of them. Feel the difference ? Regards, Oleg _____________________________________________________________ Oleg Bartunov, Research Scientist, Head of AstroNet (www.astronet.ru), Sternberg Astronomical Institute, Moscow University, Russia Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/ phone: +007(495)939-16-83, +007(495)939-23-83
В списке pgsql-general по дате отправления: