回答

收藏

在T-SQL中强制转换nvarchar变量的排序规则

技术问答 技术问答 208 人阅读 | 0 人回复 | 2023-09-14

我需要更改nvarchar变量的排序规则。通过文档:
- i8 i8 |! ?; d" O6 ]
  W7 G9 ~$ x  E+ b" Z$ B: b  ^7 ^(…)3.可以在多个级别上指定COLLATE子句。其中包括:2 T" J6 o% ?) k" J( Y
强制转换表达式的排序规则。您可以使用COLLATE子句将字符表达式应用于特定的排序规则。字符文字和变量被分配了当前数据库的默认排序规则。列引用被分配了列的定义排序规则。有关表达式的排序规则,请参见排序规则优先级 (Transact-SQL)。8 @% s% S7 t& C) z1 e

# O8 Z, }. O" i/ n7 i% N4 n! ^但是,我无法为此目的使用CAST(),CONVERT()或带DECLARE的变量声明找出正确的语法。; ]3 k+ t$ q  x5 u6 n+ H5 f
                , U* n% a! m, ~# j
解决方案:: ~( ~$ H7 \6 N, P6 `2 l$ h
                ; a8 |2 e& q6 E! {8 h
. ^; @: e1 q, n3 L0 a8 Q5 O
6 W2 {3 U6 b  }, a6 K) N: q  v
                SELECT CAST('abc' AS varchar(5)) COLLATE French_CS_AS
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则