Ahoj,
potřeboval bych vysvětlit jak se přesně chová operátor NOT IN v PostgreSQL ve verzi 8.3.
Mám jeden dotaz:
select count(distinct permusername) from spacepermissions where spaceid = 112 and permusername IN (select permusername from spacepermissions where spaceid = 112 group by permusername having count(permtype) > 2) and permusername is not null;
Tady mi operátor IN funguje tak, jak bych předpokládal. Vybere mi 14 záznamů z 650.
Ale když změním dotaz na:
select count(distinct permusername) from spacepermissions where spaceid = 112 and permusername NOT IN (select permusername from spacepermissions where spaceid = 112 group by permusername having count(permtype) > 2) and permusername is not null;
nevybere mi doplněk množiny, tj. 636 záznamů ale 0 záznamů.
Děkuji
Boris