SELECT TimeSheets.EmployeeID, Month(WorkDate) as MonthPay , YEAR(WorkDate) AS YearPay, SUM(TimeSheets.HoursWorked * A.HourlyRate) AS LaborDollars FROM TimeSheets INNER JOIN WorkerRates A ON A.EmployeeID = TimeSheets.EmployeeID AND RateEffectiveDate <= WorkDate AND RateAddedDate <= WorkDate WHERE NOT EXISTS(SELECT 1 FROM WorkerRates WHERE RateEffectiveDate <= WorkDate AND RateAddedDate <= WorkDate AND (RateEffectiveDate > A.RateEffectivedate OR RateAddedDate > A.RateAddedDate)) GROUP BY TimeSheets.EmployeeID, Month(WorkDate),YEAR(WorkDate)