【发布时间】:2019-10-24 12:42:22
【问题描述】:
我搜索了高低都找不到答案,你能设置一个变量的排序规则吗?根据MS documentation,似乎只有在 SQL Azure 上才有可能:
-- Azure SQL 数据仓库和并行数据仓库的语法
声明
{{ @local_variable [AS] data_type } [ =value [ COLLATE ] ] } [,...n]
目前我必须这样做:
DECLARE @Test nvarchar(10) = N'Crud';
IF ( @Test = N'Crud' COLLATE Latin1_General_CS_AI )
Print N'Crud';
IF ( @Test = N'cRud' COLLATE Latin1_General_CS_AI )
Print N'cRud';
IF ( @Test = N'crUd' COLLATE Latin1_General_CS_AI )
Print N'crUd';
IF ( @Test = N'cruD' COLLATE Latin1_General_CS_AI )
Print N'cruD';
什么时候我想做的是:
DECLARE @Test nvarchar(10) = N'Crud' COLLATE Latin1_General_CS_AI;
IF ( @Test = N'Crud' )
Print N'Crud';
IF ( @Test = N'cRud' )
Print N'cRud';
IF ( @Test = N'crUd' )
Print N'crUd';
IF ( @Test = N'cruD' )
Print N'cruD';
我猜答案是否定的,但我想确认一下,至少,需要此信息的其他人会得到明确的答案。
非常感谢。
【问题讨论】:
-
我 99% 确定答案是否定的,因为不久前有一个关于它的 SO 问题,但很难知道要搜索什么。
-
直接放到SSMS里自己试试吧……
-
是的,因为我喜欢不先测试就发布东西:)
标签: sql-server tsql sql-server-2014