Subject Re: select from 2 tables with certain values identical
Author Svein Erling Tysvær
Ok, Thomas, here goes:

1. Give me all records from A and B
where A.fld2=B.fld6 and A.fld3=B.fld7 and A.fld4=B.fld9;

select <something>
from a
join b on A.fld2=B.fld6 and A.fld3=B.fld7 and A.fld4=B.fld9

2. Give me all records from A and B excluding those that were
returned by the above query;

I'd prefer to split this into two separate questions:

2a. All records from A that doesn't have a matching record in B

select <something>
from a
where not exists(select * from b
where A.fld2=B.fld6 and A.fld3=B.fld7 and A.fld4=B.fld9)

2b. All records from B that doesn't have a matching record in A

select <something>
from b
where not exists(select * from a
where A.fld2=B.fld6 and A.fld3=B.fld7 and A.fld4=B.fld9)

You may concatenate the two above queries using UNION, but be aware
that the types then must match.

Is that enough to get you going?
Set
(chilly) Oslo, Norway

--- In firebird-support@yahoogroups.com, Thomas Besand wrote:
> Hi set,
> thanks for your answer, *but* ;-)
> you call that a 'simple query' on the client side, eeh?
>
> I tried to fiddle around with it; but I don't get the meaning. Can
> you put me on the track?
>
> BTW: I don't need the records in one resultset.
> for one query I need :
>
> 1. Give me all records from A and B where A.fld2=B.fld6 and
> A.fld3=B.fld7 and A.fld4=B.fld9;
>
> and for another one, depending on the user's choice:
> 2. Give me all records from A and B excluding those that were
> returned by the above query;
>
> Thanks again,
>
> Thomas Besand
> Berlin, Germany