MySQL 进行字符串比较时不区分大小写(mysql不区分大小写)
MySQL被广泛用于 Web 开发,尤其是包括 Websites(如WordPress等)和 Online Shopping Store(比如eBay)在内的数据库开发。 如果要用MySQL来处理字符串,会发现它并不区分大小写。
为了更好地说明MySQL在比较字符串时不区分大小写,下面将示例代码执行以比较两个字符串:
“`sql
SELECT ‘Apple’ = ‘apple’;
结果将会是:
1
可以看到这里MySQL把大小写忽略掉了,而输出为1(表示两个字符串相等)。
MySQL比较字符串的不区分大小写也可以和LIKE运算符一起使用,例如下面的示例:
```sqlSELECT 'Hello' LIKE 'hEllo';
结果将会是:
1
从上面可以看出,MySQL在使用like运算符时,也会忽略字符串大小写的差异,这里运算结果也为1。
而MySQL如果需要比较大小写时,就需要使用BINARY运算符了,如:
“`sql
SELECT BINARY ‘Apple’ = ‘apple’;
结果为:
0
可以看到,由于添加了BINARY运算符,MySQL就可以正确识别出字符串对大小写的差异,因此运算的结果为0,表示两个字符串不相等。
从上面可以看出,MySQL在进行字符串比较时,默认是不区分大小写,但是这种情况也可以通过使用BINARY运算符来允许MySQL正确识别出字符串的大小写差异。