MySQL ਵਿੱਚ ਡੁਪਲੀਕੇਟ ਕਤਾਰਾਂ ਨੂੰ ਮਿਟਾਓ- DELETE JOIN ਸਟੇਟਮੈਂਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡੁਪਲੀਕੇਟ ਕਤਾਰਾਂ ਨੂੰ ਮਿਟਾਓ

MySQL ਵਿੱਚ ਇੱਕ ਨੂੰ ਛੱਡ ਕੇ ਸਾਰੀਆਂ ਡੁਪਲੀਕੇਟ ਕਤਾਰਾਂ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ? [ਡੁਪਲੀਕੇਟ]

ਉਪਭੋਗਤਾ ਸਾਰਣੀ ਵਿੱਚ ਡੁਪਲੀਕੇਟ [email protected] ਈਮੇਲ ਦੇ ਨਾਲ 5 ਰਿਕਾਰਡ ਹਨ

ਖੋਜ ਉਪਭੋਗਤਾ ਸਾਰਣੀ ਵਿੱਚ ਡੁਪਲੀਕੇਟ ਈਮੇਲਾਂ ਨੂੰ ਵਾਪਸ ਕਰਦੀ ਹੈ:

SELECT *, COUNT(email) FROM users  
GROUP BY email   
HAVING  COUNT(email) > 1;

DELETE JOIN ਸਟੇਟਮੈਂਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡੁਪਲੀਕੇਟ ਕਤਾਰਾਂ ਨੂੰ ਮਿਟਾਓ

DELETE table1 FROM users table1  
	INNER JOIN users table2   
	WHERE table1.id < table2.id AND table1.email = table2.email

ਨਤੀਜਾ