在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 |
|
|
|
|
|