SQL-Abfrage, die die effektive Kalkulationsrate basierend auf dem Belastungsdatum auswählt

8

SQL-Neuling hier. Ich versuche eine Kalkulationsabfrage zu erstellen, die Mitarbeiter-Zeitkarteninformationen ausgibt und die Kosten basierend auf einer effektiven Mitarbeiterkostenkalkulationsrate berechnet.

Meine Frage ist ähnlich wie hier gefragt: Retro-aktiv effektives Datum ändert sich mit überlappenden Daten , aber ich beschäftige mich nicht mit Retro-Aktivitäten oder überlappenden Datumsbereichen.

Tabellenbeispiele (Nullwerte in der Tariftabelle zeigen die aktuelle Rate an):

%Vor%

Die Abfrage (gibt Duplikate zurück, die durch mehrere Rateneinträge (offensichtlich) verursacht wurden):

%Vor%

Gewünschte Ausgabe:

%Vor%

Ich bin in Kreisen mit dem Operator Between in einer Unterabfrage herumgelaufen, um die korrekte Rate basierend auf dem Ladedatum zu isolieren, hatte aber kein Glück.

Ich schätze jede Hilfe!

    
Jaxaeon 17.04.2012, 18:18
quelle

1 Antwort

2

Sie haben den DBMS-Typ nicht angegeben, auf den sich die folgende Antwort für SQL-Server bezieht. Ich bin mir sicher, dass es andere Möglichkeiten gibt, dies zu tun, aber auf diese Weise wird das null Rate_Exp Datum durch das aktuelle Datum ersetzt.

%Vor%

ODER verwenden Sie die CASE -Anweisung in Ihrer WHERE -Klausel:

%Vor%     
Taryn 17.04.2012, 18:41
quelle

Tags und Links