Bonjour,
j'ai une requête avec un like que je voudrais rendre insensible à la casse :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SELECT DISTINCT id_document, identifiant_meta 
FROM vue_moteur_recherche 
WHERE (identifiant_meta = 'format' AND valeur_meta like '%word%') )
Vous aurez compris que je voudrais que ma requête me retourne les enregistrements dont le champ valeur_meta contient Word ou word indiférament.
Or, il semble que chez moi, like soit sensible à la casse (ce qui est bizzare, car au cours de mes recherches j'ai lu plusieures fois qu'il était censé être insensible).
J'ai essayé de jouer avec les fonction UPPER() ou LOWER() de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SELECT DISTINCT id_document, identifiant_meta 
FROM vue_moteur_recherche 
WHERE (identifiant_meta = 'format' AND UPPER(valeur_meta) like UPPER('%word%')) )
=> même résultat, la requête est sensible à la casse ... c'est incompréhensible on dirait que les fonctions upper et lower n'ont strictement aucun effet (est-ce à cause du like ou des jokers ?)
J'en viens à me demander si ce n'est pas un problème de config de mon serveur (mais lequel ?).

Y'a t'il une astuce miracle en SQL ?
Dois-je faire un réglage sur mysql ?

Je précise que je travaille sur MySQL 5 sous windows, les champs interrogés par ma requete sont issus d'une vue, ils sont dans leur table d'origine de type varchar et d'interclassement latin1_swedish_ci

Merci d'avance aux pros de MySQL du forum