Fonte de classement de type nvarchar variables en t-sql
J'ai besoin de modifier le classement d'une variable de type nvarchar. Par la documentation:
(...)
3. La clause COLLATE peut être spécifié
à plusieurs niveaux. Ces éléments comprennent l'
suivantes:Casting du classement d'une
de l'expression. Vous pouvez utiliser le COLLATE
la clause d'appliquer une expression de caractère
à un certain classement. Caractère
constantes et variables sont assignées
le classement par défaut de l'actuel
la base de données. Les références de colonne sont
affecté à la définition de classement de
la colonne. Pour le classement d'un
l'expression, voir La Priorité De Classement
(Transact-SQL).
Cependant je ne peux pas comprendre la syntaxe correcte pour l'utilisation de CAST(), la fonction CONVERT() ou la déclaration de la variable à DÉCLARER à cette fin.
Vous devez vous connecter pour publier un commentaire.
CAST
ouCONVERT
est superflu!Il est superflu, car il suffit de changer le classement ne change pas le type de données
NVARCHAR
.Si vous sont en train de changer entre 2 et 1 octet, ou vice-ver-sa, les encodages de caractères, puis la FONTE ou Convertir est nécessaire. Il n'est pas superflu dans ces cas.
Lorsque la colonne source est un 2 octet de la séquence de caractères (nchar, nvarchar) et la sélection de projection est nécessaire pour être un seul octet caractère (char, varchar), vous devez spécifier le cast et convert. Appliquer le classement de conversion avant la conversion entre les systèmes de type.
Si vous voulez comparer ou de joindre les deux colonnes de classement différent, cela pourrait aider.
Dans mon cas, j'ai eu à comparer deux colonnes, avec une aide de 'SQL_Latin1_General_CP1_CI_AS" et l'autre à l'aide de 'Latin1_General_CP1_CI_AS'.
J'ai simplement utilisé cette option où je rejoins ces deux.