Denis Perchine <dyp@perchine.com> writes:
> As far as you can see it uses sequence scan for inner select. This is quite
> strange as if I do this select with a constant it will use index scan:
Are the two tables' "email" fields declared as exactly the same
datatype?
IIRC, 7.0.* has a problem with recognizing that a type-coerced parameter
to an inner query is useful as an indexscan reference constant. This is
fixed in current sources, but in the meantime avoiding an implicit type
coercion is the easiest workaround.
regards, tom lane