Bom dia Patricia.
Tem mais de uma maneira de resolver este caso.
Descrevi 2 exemplos, veja abaixo:
-- ********************************************************************* --
-- ****** SOLUÇÃO 1 **************************************************** --
-- ****** OBS: se houverem dependências vinculadas na tabela, esta solução
-- pode não ser a adequada
-- ********************************************************************* --
-- tabela ANTES
select * from #MinhaTabela
-- como todos os dados da linha estão idênticos, bastaria dar um distinct e jogar todos os dados numa temporaria
if object_id('tempdb..#minhaTemp') is not null drop table #minhaTemp
select distinct MATRICULA, NOME, PERCENTUAL_COMISSAO into #minhaTemp from #MinhaTabela
-- limpa todos os registros da tabela oficial
truncate table #MinhaTabela
-- re-insere os dados na tabela sem as duplicidades
insert into #MinhaTabela select * from #minhaTemp
-- tabela DEPOIS
select * from #MinhaTabela
-- ********************************************************************* --
-- ****** SOLUÇÃO 2 **************************************************** --
-- ****** OBS: nesta solução só serão removidas duplicidades, sempre
-- mantendo 1 dos registros únicos
-- ********************************************************************* --
-- tabela ANTES
set rowcount 0
select * from #MinhaTabela
declare @MATRICULA int = 0
while (select TOP 1 QTD=count(1) from #MinhaTabela group by MATRICULA having count(1)>1)>0
begin
set @MATRICULA = 0
set @MATRICULA = (select top 1 MATRICULA from #MinhaTabela group by MATRICULA having count(1)>1)
set rowcount 1
delete from #MinhaTabela where MATRICULA = @MATRICULA
end
-- tabela DEPOIS
set rowcount 0
select * from #MinhaTabela