Re: plan difference between set-returning function with ROWS within IN() and a plain join

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Frank van Vugt <ftm.van.vugt@xxxxxxx> writes:
> db=# explain analyse
> 	select sum(base_total_val)
> 	from sales_invoice
> 	where id in (select id from si_credit_tree(80500007));

Did you check whether this query even gives the right answer?  The
EXPLAIN output shows that 21703 rows of sales_invoice are being
selected, which is a whole lot different than the other behavior.

I think you forgot the alias foo(id) in the subselect and it's
actually reducing to "where id in (id)", ie, TRUE.

			regards, tom lane


[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux