sql:字符串比较
我有以下sql:字符串比较,sql,string-comparison,Sql,String Comparison,我有以下sql代码: if ('aaa' = 'aAa') print 'equals' else print 'not equals' 它打印的等于。为什么字符串不相等时会出现这种行为?使用排序规则: IF 'aaa' COLLATE Latin1_General_CS_AS = 'aAa' COLLATE Latin1_General_CS_AS print 'equals' else print 'not equals' 据我所知,SQL中的字符串比较不区分大小写
sql
代码:
if ('aaa' = 'aAa')
print 'equals'
else
print 'not equals'
它打印的等于。为什么字符串不相等时会出现这种行为?使用排序规则:
IF 'aaa' COLLATE Latin1_General_CS_AS = 'aAa' COLLATE Latin1_General_CS_AS
print 'equals'
else
print 'not equals'
据我所知,SQL中的字符串比较不区分大小写。您需要了解字符串排序规则。显然,您正在使用的数据库的默认值是不区分大小写的。您可能忘记了在这个问题中添加SQL Server
标记,因为它是不区分大小写的,这对于其他数据库可能不正确,例如PostgreSQL
或与Oracle相关的(SQL Server):“SQL”中没有IF
(查询语言)。您使用的是哪种数据库管理系统?