JSu*_*uar 4 sql sql-server-2005 case-sensitive sql-server-2008
有一段时间我认为,为了WHERE正确评估标准,我需要考虑区分大小写.我会用UPPER(),LOWER()当情况无关紧要.但是,我发现以下查询产生相同的结果.
SELECT * FROM ATable WHERE UPPER(part) = 'SOMEPARTNAME'
SELECT * FROM ATable WHERE part = 'SOMEPARTNAME'
SELECT * FROM ATable WHERE part = 'somepartname'
Run Code Online (Sandbox Code Playgroud)
SQL大小写敏感字符串比较说明使用区分大小写的排序规则.这是强制区分大小写的唯一方法吗?此外,如果你有一个区分大小写排序时,将UPPER()和LOWER()有必要吗?
感谢帮助.
不区分大小写的排序规则的常见的SQL Server默认意味着UPPER()和LOWER()比较字符串时是不需要的.
实际上是一种表达方式
SELECT * FROM Table WHERE UPPER(part) = 'SOMEPARTNAME'
Run Code Online (Sandbox Code Playgroud)
由于应用于part比较左侧列的功能,因此也不会使用可用索引.
| 归档时间: |
|
| 查看次数: |
1073 次 |
| 最近记录: |