your query equals to this one
SELECT top 1 name, salary from employee WHERE salary NOT IN
( SELECT TOP 1 salary FROM employee ORDER BY salary DESC )
order by salary desc
but imagine if there are more than 1 people
have the same salary which is second highest?
your hardcoded number 2 does not work in thi situation