Bonjour,
Je viens de découvrir un bug très étrange avec une requête contenant un LIKE sous SQL Server 2005.
La requête suivante me retourne 88 :
Donc il y a 88 lignes de maTable qui contiennent aaa dans monChamp
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT COUNT(*) AS NombreRetourne FROM maTable WHERE monChamp = 'aaa';
La requête suivante me retourne 88 lignes :
De même que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM maTable WHERE monChamp LIKE '%aaa%';
Jusque là ça va...
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM maTable WHERE monChamp LIKE 'aaa%';
Par contre :
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM maTable WHERE monChamp LIKE 'aaa';
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM maTable WHERE monChamp LIKE '%aaa';
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM maTable WHERE monChamp LIKE '_aa';
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM maTable WHERE monChamp LIKE 'aa_';
me retournent QUE 9 lignes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM maTable WHERE monChamp LIKE 'a_a';
1. Est-ce normal ?
2. Que dois-je faire ?
3. Dois-je en déduire que LIKE bug sous SQL Server 2005 ?
Je vous remercie pour vos réponses.
EDIT PROLEME RESOLU :
Il s'agirait bien d'un problème lié à la version d'SQL Server 2005, Microsoft propose de mettre à jour la version d'SQL Server 2005 avec Service Pack 4 :
http://support.microsoft.com/kb/959019
Partager