В своей таблице истории сотрудников я пытаюсь найти, какая была зарплата, а затем на какую она была изменена. Каждое изменение зарплаты добавляет новую запись, потому что новая зарплата считается новой «работой», поэтому к ней прикрепляются дата начала и окончания. Я могу выбрать все эти даты, но получаю дубликаты, потому что не могу сравнить текущую запись только с самой последней предыдущей записью для этого сотрудника. (если это имеет смысл)
Я бы хотел, чтобы результаты были такими:
Employe Name, OldSalary, NewSalary, ChangeDate(EndDate)
Joe 40,000 42,000 01/10/2011
Пример данных выглядит как
EmployeeHistId EmpId Name Salary StartDate EndDate
1 45 Joe 40,000.00 01/05/2011 01/10/2011
2 45 Joe 42,000.00 01/11/2011 NULL
3 46 Bob 20,000.00 01/12/2011 NULL