在执行字符串比较时,如何使用 MySQL BINARY 关键字?


当 MySQL 执行字符串比较时,它不区分大小写,但借助 BINARY 关键字,MySQL 可以执行区分大小写的字符串比较。这是因为 BINARY 关键字指示 MySQL 使用字符串中字符的底层 ASCII 值(而不是它们的字母)比较字符。可以用以下 `Student_info` 表中拥有以下数据的情况进行说明 -

mysql> Select * from student_info;
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Chandigarh | Literature |
| 125  | Raman   | Shimla     | Computers  |
+------+---------+------------+------------+
3 rows in set (0.00 sec)

下面的查询将使用 BINARY 关键字强制 MySQL 执行区分大小写的字符串比较。

mysql> select * from student_info WHERE BINARY Name IN('YashPal', 'GAURAV');
+------+---------+----------+---------+
| id   | Name    | Address  | Subject |
+------+---------+----------+---------+
| 101  | YashPal | Amritsar | History |
+------+---------+----------+---------+
1 row in set (0.08 sec)

从上述结果集可以清楚地看出,在使用 BINARY 关键字之后,MySQL 执行区分大小写的字符串比较。

更新时间:2020 年 2 月 4 日

822 次浏览

开始您的 职业生涯

完成课程,获得认证

开始
广告
© . All rights reserved.