J'ai une table avec des lignes comme id, longueur, temps et certains d'entre eux sont des doublons, où la longueur et l'heure sont les mêmes dans certaines lignes. Je veux supprimer toutes les copies de la première ligne soumise.Trouver des doublons ou plus dans Mysql, les supprimer sauf la première entrée
id | length | time
01 | 255232 | 1242
02 | 255232 | 1242 <- Delete that one
J'ai ceci pour montrer tous les doublons dans la table.
SELECT idgarmin_track, length , time
FROM `80dage_garmin_track`
WHERE length in
(SELECT length
FROM `80dage_garmin_track`
GROUP
BY length
HAVING count(*) > 1)
ORDER BY idgarmin_track, length, time LIMIT 0,500
Thx pour la solution! Un problème, erreur suivante: "# 1064 - Vous avez une erreur dans votre syntaxe SQL, consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser 't1 WHERE EXISTS (SELECT 1 de' 80dage_garmin_track' t2 WHERE t1.Le 'à la ligne 1 "La requête fonctionne bien avec SELECT au lieu de DELETE – Holsteinkaa
Une autre chose est, ce qui est t1 et t2? Variables? – Holsteinkaa
t1 et t2 sont des alias.Il omis le mot-clé" AS ". Ils sont utilisés, de sorte que vous n'avez pas à écrire le nom de la table entière encore et encore – fancyPants