執行字串比較時,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.