Oi, Tiago!! Tudo certo por aí?
Desde já, peço desculpas por demorar a te responder.
Para resolver esse desafio, você pode trabalhar com uma tabela temporária, a qual será um suporte para a exclusão dos dados duplicados da tabela principal (dados_exame
), observe os passos abaixo:
1 - Criar uma tabela temporária para armazenar os registros únicos:
CREATE TEMPORARY TABLE registros_unicos
SELECT DadosExame_ID
FROM dados_exame
GROUP BY Exame_ID, GrupoLeitura, LadoLeitura, Passos;
Para criar a tabela temporária, utilizamos o comando CREATE TEMPORARY TABLE
. Depois disso, demos um nome à tabela e utilizamos um SELECT
que retorna apenas registros únicos da tabela dados_exame
, esse processo ocorre através do GROUP BY
: os registros com combinações iguais serão agrupados e apenas um valor único de DadosExame_ID
(geralmente a primeira ocorrência) será selecionado para cada grupo.
2 - Utilizar a tabela temporária para realizar o DELETE
na tabela original:
DELETE FROM dados_exame
WHERE DadosExame_ID NOT IN (SELECT DadosExame_ID FROM registros_unicos);
Neste momento, estamos excluindo da tabela dados_exame
os registros cujo DadosExame_ID
não está presente na tabela registros_unicos
. Dessa maneira, serão mantidos em dados_exame
apenas os registros únicos!
Espero ter ajudado com o desafio, Tiago! Contudo, vale ressaltar que como é um assunto externo ao curso e que não tenho acesso ao cenário completo do projeto, outros testes terão de ser feitos a fim de obter o resultado esperado, mas espero que esta resposta seja um bom ponto de partida para a resolução do seu problema!
Caso surjam novas dúvidas, fico à disposição.
Um grande abraço.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!