[SQL] Finding the negative

Поиск
Список
Период
Сортировка
От Ed Rouse
Тема [SQL] Finding the negative
Дата
Msg-id DE8D456CF535514BB21272D05C4A1C391E66AB2E@mbx029-e1-va-10.exch029.domain.local
обсуждение исходный текст
Ответы Re: [SQL] Finding the negative  (Vincent Elschot <vinny@xs4all.nl>)
Re: [SQL] Finding the negative  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-sql

Version 9.1.

I have the following query that brings back the correct number of lobs still asscociated with data in other tables:

 

select count(distinct(loid)) from pg_largeobject where (loid in (select content from attachments) or loid in (select content from idw_form_workflow_attachments));

 

in that the loid’s in either table are found. What I need is to find the ones NOT in either table. I have tried using not in both with or/and  and various parenthesis. I tried:

 

select count(distinct(loid)) from pg_largeobject where not ((loid in (select content from attachments) or loid in (select content from idw_form_workflow_attachments)));

 

This should work since, if the loid is not in the content of either table, it should be F or F = F, negated to T;

which I would think would then count, but I get back 0 instead of the rather large number I should get. This is all a prelude to removing lobs that are no longer referenced.

 

Any ideas on how to get the inverse of the working query? Thanks

В списке pgsql-sql по дате отправления:

Предыдущее
От: Saiful Muhajir
Дата:
Сообщение: Re: [SQL] Find rows with "timestamp out of range"
Следующее
От: Vincent Elschot
Дата:
Сообщение: Re: [SQL] Finding the negative