Je prends la classe MySQL de Duke sur Coursera. Au cours de la deuxième semaine, on parle de données désordonnées et je me suis dit que je poserais ma question ici. La portée de ma question serait comment comparer une entrée dans une rangée de table qui correspondrait déjà à une instance sauf qu'elle a été entrée avec un tiret, par exemple "Golden Retriever Mix" est la même instance que "Golden Retriever-Mix". Et quand je lance une instruction DISTINCT SELECT, je ne veux pas qu'elle tire les deux résultats. Le hic, c'est que nous ne pouvons pas simplement enlever tous les traits d'union des champs de colonnes parce que nous les voulons toujours par exemple pour l'entrée de "Golden Retriever-Airedale Terrier Mix". Comment une requête chercherait-elle à le faire? L'exemple de code qui tire à la fois "Golden Retriever Mix" et "Golden Retriever-Mix" est ci-dessous.Requête MySQL pour supprimer les doublons avec trait d'union
SELECT DISTINCT breed,
TRIM(LEADING '-' FROM breed)
FROM dogs
ORDER BY (LEADING '-' FROM breed) LIMIT 1000, 1000;
Je pense que je dois et IF/THEN qui dit IF(REPLACE(breed,'-','') = breed) THEN DELETE breed;
Il est évident que ce n'est pas une syntaxe correcte qui est ce que je cherche.
Où vous en avez plusieurs qui sont identiques (après avoir remplacé les traits d'union) - cela vous dérange-t-il quelle variante vous gardez? – Bridge