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

วิธีค้นหาแบบ Accent Sensitive ใน MySQL

ใช้ Collation utf8_bin

การค้นหาที่แยกตัวอักษรที่มี Accent (เครื่องหมายทอน) ได้ ใช้ Collation utf8_bin

รูปแบบคำสั่ง

yourColumnName dataType COLLATE utf8_bin;

ตัวอย่าง

สร้างตาราง

mysql> create table AccentSearchDemo (
    -> Id varchar(100) collate utf8_bin
    -> );
Query OK, 0 rows affected (0.51 sec)

เพิ่มข้อมูล

mysql> insert into AccentSearchDemo values('John123');
mysql> insert into AccentSearchDemo values('Smith123');
mysql> insert into AccentSearchDemo values('123John');

แสดงผล

mysql> select * from AccentSearchDemo;
+----------+
| Id       |
+----------+
| John123  |
| Smith123 |
| 123John  |
+----------+
3 rows in set (0.00 sec)

การค้นหา Accent Sensitive

เมื่อใช้ utf8_bin การเปรียบเทียบจะเป็น Binary Comparison:

  • 'é' != 'e'
  • 'à' != 'a'
  • Case-sensitive: 'A' != 'a'

เหมาะสำหรับระบบที่ต้องแยกตัวอักษรภาษาที่มี Accent ชัดเจน