Re: function optimization ???
От | Brent Verner |
---|---|
Тема | Re: function optimization ??? |
Дата | |
Msg-id | 20010124174507.A28610@rcfile.org обсуждение исходный текст |
Ответ на | Re: function optimization ??? (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
On 24 Jan 2001 at 12:14 (-0500), Tom Lane wrote: | Brent Verner <brent@rcfile.org> writes: | > calling it as: | > SELECT p.*, p.book_info.title FROM pricing p WHERE vista_ans='POD'; | > background and observation: | > the pricing table is fairly large, but only a small number meet | > "WHERE vista_ans='POD'". I can select all where vista_ans='POD' | > very quickly (.2 sec), but adding in the get_book(pricing) call | > slows this down to about 20sec. I can, with an external sql query, | > select all of the desired records in about 1 sec, so it appears | > to me that the function is being called regardless of whether | > or not the WHERE clause is being satisfied. | | This conclusion is absolutely false: the SELECT target list is NOT | evaluated except at rows where the WHERE condition is satisfied. | | I suspect the real problem is that the select inside the function | is not being done as efficiently as you'd like. yes, this is indeed the case. Sorry for the noise, my 'with an external query' case was a broken product of sleep-dep :\. thanks. brent
В списке pgsql-hackers по дате отправления: