Mysql
 sql >> Database >  >> RDS >> Mysql

Query per trovare e rimuovere i dati duplicati dalla tabella MYSql

Questo è molto spesso il problema di gestire i dati duplicati nella tabella MySQL, se stai lavorando su un'enorme quantità di dati, potresti aver riscontrato questo problema, quindi in questo post ti mostrerò la query MYsql con la quale puoi trovare dati duplicati e rimuoverlo. Questa è anche la domanda più ponibile durante il periodo del colloquio.



Supponiamo di avere 25.000 aziende nel nostro database e che esistano alcune società duplicate nel tuo tabelle delle aziende e desideri trovare aziende duplicate e desideri rimuoverle completamente dalla tabella delle aziende, quindi utilizza le query mysql di seguito.

TB_AZIENDE

ID NOME_AZIENDA INDIRIZZO CONTACT_PERSON_NAME EMAILID PHONENO
1 HCL LTD. NOIDA XXXXXXX [email protected] xxxxxxxx
2 WIPRO DELHI XXXXXXX [email protected] xxxxxxxx
3 HCL LTD. NOIDA XXXXXXX [email protected] xxxxxxxx
.. .. .. .. x.. ...
.. .. .. .. x.. ...
.. .. .. .. x.. ...

Nella tabella sopra ci sono record duplicati dell'azienda HCL che dobbiamo trovarlo e rimuoverlo.

Query MYSql per trovare dati duplicati.

SELECT COMPANY_NAME
FROM TB_COMPANIES
WHERE COMPANY_NAME
IN (
SELECT COMPANY_NAME
FROM TB_COMPANIES
GROUP BY COMPANY_NAME
HAVING COUNT( COMPANY_NAME ) >1
)

Query MYSql per eliminare i dati duplicati.

DELETE C1 
FROM TB_COMPANIES C1,TB_COMPANIES C2 
WHERE C1.ID < C2.ID 
AND C1.COMPANY_NAME = C2.COMPANY_NAME

Sopra hai visto, usando la sottoquery MYsql e la funzione di auto-unione puoi facilmente scrivere query per trovare ed eliminare dati duplicati.



Se ti piace questo post, non dimenticare di iscriverti al mio taccuino pubblico per altre cose utili