"Joost Kraaijeveld" <J.Kraaijeveld@Askesis.nl> writes:
> CREATE OR REPLACE VIEW even AS
> SELECT DISTINCT abo_his.klantnummer,
>> abo_his.artikelnummer, abo_his.code_retour,
>> abo_klt.aantal_abonnementen, abo_klt.afgewerkt
> FROM abo_his
> JOIN abo_klt ON abo_his.klantnummer = abo_klt.klantnummer
> WHERE abo_his.abonnement = 238
> ORDER BY abo_his.klantnummer, abo_his.artikelnummer,
>> abo_his.code_retour, abo_klt.aantal_abonnementen, abo_klt.afgewerkt;
> In the table abo_klt there is no record where abo_klt.abonnement = 238 and abo_klt.afgewerkt > 0:
> munt=# select * from abo_klt where abonnement = 238 and afgewerkt > 0;
Yes, but the join isn't testing abo_klt.abonnement. It's testing
abo_his.abonnement. If there's a reason to think that rows in the two
tables with the same klantnummer must also have the same abonnement,
you have not said what it is.
regards, tom lane