TSQL比较字符串/变量而忽略大小写/大写?

时间:2011-07-15 15:29:07

标签: sql sql-server tsql sql-server-2008 collation

我正在处理一个查询,以便我可以将从文件名读取的单词与已在代码中预定义的另一个单词进行比较,并为其分配一个数值。

但是,我遇到的问题是试图忽略名称的情况,因为正在从文件中读取名称,案例可能会更改,然后与我设置的预定义值不匹配。是否有任何简单的方法可以忽略大写,除了在案例中列出所有可能的价值?

code snipit:

NumberVal = CASE   
              WHEN Name = 'Bond' OR Name = 'BOND' OR Name = 'bond' THEN 16   
            END

1 个答案:

答案 0 :(得分:4)

SQL Server默认忽略大小写,因此有人更改了您不知道的设置

如果现在区分大小写,只需使用UPPER并忘记排序

CASE   
  WHEN UPPER(Name) = 'BOND' THEN 16   
 END