SQL Sensibles à la casse de la Chaîne de Comparer
Comment voulez-vous comparer des chaînes de sorte que la comparaison est vrai que si le cas de chacune des chaînes sont identiques. Par exemple:
Select * from a_table where attribute = 'k'
...sera de retour une ligne avec un attribut de 'K'. Je ne veux pas de ce comportement.
- Il pourrait ne pas être ce que vous avez besoin, mais vous pouvez modifier le Classement ou l'utilisation d'un Classement spécifique dans votre requête.
- SQL produit?
Vous devez vous connecter pour publier un commentaire.
A fait le tour.
Traditional_Spanish_CI_AS
, utilisezTraditional_Spanish_CS_AS
dans votre requêteVous pouvez également convertir cet attribut comme sensible à la casse en utilisant cette syntaxe :
Maintenant, votre recherche sera sensible à la casse.
Si vous voulez faire de cette colonne casse de nouveau, puis utilisez
Vous Pouvez facilement Convertir les colonnes de type VARBINARY(Max Length), La longueur doit être le maximum que vous attendez pour éviter défectueux comparaison, Il suffit de régler la longueur que la longueur de la colonne. Garniture colonne de vous aider à comparer la valeur réelle à l'exception de l'espace a un sens et de valeur dans vos colonnes de la table, C'est un exemple simple et comme vous pouvez le voir je couper les colonnes de la valeur et ensuite de les convertir et de les comparer.:
Espérons que cette aide.
Tout comme une autre alternative, vous pouvez utiliser HASHBYTES, quelque chose comme ceci:
Vous pouvez définir
attribute
commeBINARY
ou de l'utilisationINSTR
ouSTRCMP
pour effectuer votre recherche.INSTR
etSTRCMP
fonctions.