how to view data as history of field value change Example

i have data like

id   employeeId Salary       Year
1      1           12000     2001
1      2           10000     2001
1      1           16000     2002
1      3           12000     2004
1      1           18000     2005
1      3           14000     2006

So employee ID 1 has 3 records in this and 2  has one and 3 has two record
i expect output as

EmployeeID  NewSalary Oldalary
1             18000    16000
1             16000    12000
2             10000    -
3             14000    12000`
This should work on SQL Server 2012 +

   ;with cte as
    (select employeeId,
            Salary AS 'NewSalary',
            lead(salary,1,0)over(partition by employeeid order by salary desc) as 'OldSalary',
            row_number()over(partition by employeeid order by salary desc) as rn        
     from Table_2 
     )

     select employeeId,
            NewSalary,
            OldSalary
     from cte
     where OldSalary &lt;&gt; 0 or (OldSalary = 0 and rn=1)