Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

การใช้คำหลัก 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 จะทำการเปรียบเทียบสตริงที่คำนึงถึงขนาดตัวพิมพ์