To create the query for a select where one is NOT in the other

Поиск
Список
Период
Сортировка
От Karl Denninger
Тема To create the query for a select where one is NOT in the other
Дата
Msg-id 19980919175514.A1837@mcs.net
обсуждение исходный текст
Ответы Re: [SQL] To create the query for a select where one is NOT in the other  (Eric McKeown <ericm@palaver.net>)
Список pgsql-sql
I want to specify the following SELECT and can't figure it out:

    Table "a" and table "b" have identical schemas

    I want to select all the records in "a" in which a key field in "a"
    does NOT have a corresponding row in "b".

    I know how to do this if I want the opposite, that is, if I want all
    the rows in "a" in which the key IS present in "b" this works:

    select a.field1, a.field2 from t1 a, t2 b where a.field1 = b.field1;

However, the intuitive modification of this (change "=" to "<>") produces
a monster result in which each row in "a" other than the one which matches
gets output for each instance of "b" (which if you think about it does
make sense).

How do I structure an SQL statement to get the desired rows returned?

--
--
Karl Denninger (karl@denninger.net)

"Yes, the president should resign. He has lied to the American people,
time and time again, and betrayed their trust.  Since he has
admitted guilt, there is no reason to put the American people through
an impeachment.  He will serve absolutely no purpose in finishing out
his term, the only possible solution is for the president to save
some dignity and resign."
________________________________________________________________________

12th Congressional District Hopeful William Jefferson Clinton,
during the Nixon investigations


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

Предыдущее
От: Leslie Mikesell
Дата:
Сообщение: Re: [SQL] How to Make Case InSensitive???
Следующее
От: Eric McKeown
Дата:
Сообщение: Re: [SQL] To create the query for a select where one is NOT in the other