Thread: Better way to check more than 1 value NOT IN (...)

Better way to check more than 1 value NOT IN (...)

From
Andreas
Date:
Hi,
I've got to check if 2 values are not in a set that is dynamically 
calculated by a function.

The query looks like

select  some_id, ....
from .....
where   10  is not in ( select x from my_function (some_id))
and   20  is not in ( select x from my_function (some_id))

Is there a efficiency issue with calculating the set twice ?
Can I somehow check both (or more) values at once?


Re: Better way to check more than 1 value NOT IN (...)

From
pasman pasmański
Date:
You can write condition in subquery:

where 0=(select count(*) from myfunction(id) where x in (10,20))



2011/9/24, Andreas <maps.on@gmx.net>:
> Hi,
> I've got to check if 2 values are not in a set that is dynamically
> calculated by a function.
>
> The query looks like
>
> select  some_id, ....
> from .....
> where   10  is not in ( select x from my_function (some_id))
> and   20  is not in ( select x from my_function (some_id))
>
> Is there a efficiency issue with calculating the set twice ?
> Can I somehow check both (or more) values at once?
>
> --
> Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-sql
>


-- 
------------
pasman