Как я могу отобразить 10 лучших зарплат без таблицы, используя TOP
Попробуйте это
SELECT Salary from ( SELECT Salary, Row_Number() OVER(ORDER BY SALARY desc) AS 'Salaries' FROM User2 )#emp WHERE Salaries <=10 order by salary desc
Вы можете использовать ROW_NUMBER OVER ( order by ... )
ROW_NUMBER OVER ( order by ... )
SELECT t.sal from ( SELECT sal, Row_Number() OVER (ORDER BY sal desc) AS rownum FROM table ) t WHERE t.rownum <= 10