Bonjour, je viens de tomber sur un cas que je ne m'explique pas, peut-être quelqu'un pourrait expliquer le phénomène suivant sur un serveur SQL 2008R2 sp2 enterprise:
Dans une table "Occupant"
j'ai une colonne "NomPrenom" varchar(80) NOT NULL COLLATE French_CS_AS
donc sensible à la casse.
J'ai 39 lignes qui commencent par un "d" minuscule
J'ai 17 751 lignes qui commencent par un "D" majuscule
La requête suivante qui utilise la fonction LIKE retourne 17751, ce qui est normal
La requête suivante qui utilise les opérateurs de comparaison retourne 17 790, soit majuscules et minuscules confondues. Pourquoi perd-on la sensibilité à la casse avec ces opérateurs?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select COUNT(*) from sImmo.Occupant where NomPrenom like 'D%'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select COUNT(*) from sImmo.Occupant where NomPrenom>='D' AND NomPrenom< 'E'
Partager