PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Pourquoi SQL NOT IN est si lent ?

Vous pouvez également essayer EXISTS :

select count(1) 
from customers c
where exists (
    select 1
    from accounts a
    where sid in(72,73,74,75,76,77,78,79)
    and a.custid = c.custid
) 
and not exists (
    select 1
    from accounts a
    where sid in(80,81)
    and a.custid = c.custid
);

Cela pourrait être utile de lire :Différence entre EXISTS et IN en SQL ?