Excluir linhas duplicadas em tabela grande de forma eficiente

  • Autor Autor DanielMarte
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Status

🔒 Este tópico está fechado para novas respostas.

⏰ Apenas o criador do tópico pode solicitar a reabertura de seus próprios tópicos, mas apenas dentro dos 60 dias anteriores à última atualização.

DanielMarte

DanielMarte

VIP
Dseda
Programador
Verificación en dos pasos activada
Verificado por Binance
Suscripción a IA
tengo una tabla con mas de 2mil filas y muchas de esas filas estan duplicadas como puedo hacer una consulta para que revise la que son iguales y borre una de las dos
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Para ver rápidamente las filas duplicadas, puede ejecutar una única consulta simple

Aquí estoy consultando la tabla y enumerando todas las filas duplicadas con el mismo user_id, market_place y sku:

SELECT user_id, market_place,sku, count(id)as totals from sku_analytics group by user_id, market_place,sku having count(id)>1;

Para eliminar la fila duplicada, debe decidir qué fila desea eliminar. Por ejemplo, el que tiene una identificación inferior (generalmente más antigua) o tal vez alguna otra información de fecha. En mi caso, solo quiero eliminar la identificación más baja, ya que la identificación más nueva es la información más reciente.

Primero verifique si se eliminarán los registros correctos. Aquí estoy seleccionando el registro entre los duplicados que se eliminarán (por identificación única).

SELECT a.user_id, a.market_place,a.sku from sku_analytics a inner join sku_analytics b where a.id< b.id and a.user_id= b.user_id and a.market_place= b.market_place and a.sku = b.sku;

Luego ejecuto la consulta de eliminación para eliminar los engaños:

DELETE a from sku_analytics a inner join sku_analytics b where a.id< b.id and a.user_id= b.user_id and a.market_place= b.market_place and a.sku = b.sku;

Copia de seguridad, doble verificación, verificar, verificar la copia de seguridad y luego ejecutarla
 
Status

🔒 Este tópico está fechado para novas respostas.

⏰ Apenas o criador do tópico pode solicitar a reabertura de seus próprios tópicos, mas apenas dentro dos 60 dias anteriores à última atualização.

Voltar
Topo