t-sql как выбрать записи без дублированного одного столбца

#tsql #duplicates

#tsql #дубликаты

Вопрос:

Я хочу выбрать строки для всех сотрудников, не повторяя данные в одном столбце.

Например, у меня есть две строки, в которых отображается зарплата (до повышения), как я могу отобразить только самую большую цифру без дублирования.

Комментарии:

1. Было бы полезно, если бы вы могли обновить свой вопрос структурами таблиц, некоторыми примерами данных и ожидаемым результатом.

Ответ №1:

Вы можете использовать функцию Row_Number Вот пример кода

     select * from (
select *, 
row_number() over (partition by empid, name, department order by salary desc) as rn
from employee
) employee where rn = 1
  

Вы можете найти Row_Number() с разделением по образцу предложения по адресу http://www.kodyaz.com

Ответ №2:

Если я правильно понимаю вопрос, то простая MAX функция и GROUP BY будет работать.

 
SELECT   EmployeeId, OtherColumns, MAX(Salary)
FROM     tblEmployees
GROUP BY EmployeeId, OtherColumns