Einzelnen Beitrag anzeigen

Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#1

JOINs und zusätzliche Bedingungen

  Alt 10. Aug 2009, 08:33
Datenbank: Firebird, aber eigentlich egal • Zugriff über: IBExpert
Hallo,

zwei Fragen des allgemeinen Verständnisses:

Bei JOINs werden durch ON vorzugsweise PrimaryKey der einen Tabelle mit einem ForeignKey der anderen Tabelle verbunden. Außerdem ist es möglich, diese Vergleichsbedingung durch andere Suchbedingungen zu ergänzen:
JOIN tabelle2 ON tabelle2.FK = tabelle1.PK AND tabelle2.ID < 10 Dazu habe ich folgende Fragen:
  1. Diese ergänzenden Bedingungen könnten genausogut unter WHERE stehen. Ist es sinnvoller, sie dann unter JOIN ON aufzuführen, wenn sie sich auf tabelle2 beziehen? Gibt es noch andere Kriterien für die Entscheidung, wo eine ergänzende Bedingung besser stehen sollte?
  2. Kann mir jemand ein sinnvolles Beispiel nennen, wo im ON-Teil eine beliebige Suchbedingung mit <=, IN oder LIKE steht, ohne dass eine PK/FK-Verknüpfung vorgesehen ist? Oder gibt es so etwas zwar in der Theorie, aber niemals in der Praxis?
Danke für Erläuterungen! Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat