[Ado.net] SP 2 Tabellen per Join verknüpfen - Problem

Pessner, Andreas ado.net@glengamoi.com
Fri, 9 Sep 2005 12:06:10 +0200


Ich habe 2 Tabellen die ich per Join verknüpfen möchte!

Tabelle 1: Personen
PersID
Name
...

Tabelle 2: Sollstunden
PersID
Datum
Sollstunden
...

Geht normal via:
SELECT Pers.PersID,
	Pers.Name,
	Std.Sollstunden
FROM Personen Pers

JOIN Sollstunden Std
ON Pers.PersID = Std.PersID

Da die Sollstunden aber über das Datum geregelt sind (quasi 1.1.2001 -> 8h, 1.8.2002 -> 6h) bräuchte ich zum aktuell übergebenen Startdatum - den letzt gültigen Wert der Sollstunden!

Wenn ich also als Datum - 1.6.2002 übergeben würde - müsste da 8h kommen - bei 1.8.2002 -> 6h kommen.

Per Subquery habe ich das ganze schon gemacht - nur ist das tierisch lahm! (relativ viele Einträge). Hat jemand ne performante Idee?

Eine Möglichkeit die ich sehe, wäre das ganze in der WHERE CLAUSE zu machen - dabei halt alle Einträge von Sollstunden erstmal in die Tabelle einfließen lassen - und dann via WHERE filtern. Aber das ist sicher auch nicht sonderlich schnell.

Mit freundlichen Grüßen
Andreas