Einzelnen Beitrag anzeigen

TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.875 Beiträge
 
Delphi 12 Athens
 
#11

Re: Firebird: MINUS bzw. EXCEPT

  Alt 21. Jul 2009, 09:50
Hier mal die beiden Versionen im Vergleich:

select persnr from assistenten a where not exists (select persnr from assistenten s WHERE s.persnr >a.boss)
SQL-Code:
select a1.* from ass a1
where not exists
(select a2.assnr from ass a2
  where (a2.assnr>=a2.bossnr) and
  (a2.bossnr=a1.bossnr))
Warum die erste Version bei Dir kein Ergebnis geliefert hat, ist mir ein Rätsel.

Richtig ist allerdings das zweite Statement. In dem ersten Statement überprüfst Du nur, ob es irgendeine Persnr ist, die größer der aktuellen bossnr gibt, in der zweiten wird wie gewollt überprüft, ob es eine persnr gibt, die dem aktuellen boss zugeordnet ist und diese dann größer der aktuellen bossnr ist.

Hoffe das hilft Dir weiter.

Gruß
Thomas
Thomas Breitkreuz
Gruß Thomas
- Admin DelphiPRAXIS
- Admin Delphi-Treff
- Embarcadero MVP
  Mit Zitat antworten Zitat