MySQL ne fait pas la différence entre "e" et "ë"
Bonjour,
j'ai deux tables contenant des identités. Elles sont sensées contenir les même personnes mais parfois il y a des erreurs dans l'orthographe des prénoms ou noms. Pour TOTO, le prénom est "Mikael" dans table1, et "Mikaël" dans table2. Pour MySQL les deux prénoms sont identiques. :weird:
La requête suivante ne retourne rien.
Code:
1 2 3 4 5 6
| SELECT DISTINCT table1.CODE, table2.EMP_NOM, table2.EMP_PRENOM, table1.NOM_USUEL, table1.PRENOM
FROM table2
INNER JOIN table1 ON table2.EMP_MATRICULE_COURT = table1.CODE
WHERE (table1.NOM_USUEL <> table2.EMP_NOM
OR table1.PRENOM <> table2.EMP_PRENOM)
AND table1.NOM_USUEL = 'TOTO' |
Alors que celle-ci retourne : 123456 TOTO Mikael TOTO Mikaël
Code:
1 2 3 4 5
| SELECT DISTINCT table1.CODE, table2.EMP_NOM, table2.EMP_PRENOM, table1.NOM_USUEL, table1.PRENOM
FROM table2
INNER JOIN table1 ON table2.EMP_MATRICULE_COURT = table1.CODE
WHERE table1.PRENOM = table2.EMP_PRENOM
AND table1.NOM_USUEL = 'TOTO' |
Y a-t-il dans les paramétrages de MySQL une option pour l'obliger à faire la différence entre un caractère et sa version accentuée ?
Édition : les tables sont créées avec l'option "ENGINE=InnoDB DEFAULT CHARSET=latin1".