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

ใช้ Wildcard % ใน MySQL LIKE ให้ถูกต้อง

Wildcard % แทนตัวอักษร 0 ตัวขึ้นไป ใช้ร่วม LIKE รูปแบบ:

SELECT * FROM yourTableName WHERE yourColumnName LIKE 'pattern%';

ตัวอย่าง

สร้างตาราง SearchDemo (Name, LoginId) เพิ่มข้อมูล 6 เรคคอร์ด

ค้นหา LoginId เริ่มต้นด้วย 2

mysql> SELECT * FROM SearchDemo WHERE LoginId LIKE '2%';

ผลลัพธ์:

+-------+---------+
| Name  | LoginId |
+-------+---------+
| Carol | 2_1     |
| Mike  | 21_1    |
+-------+---------+

Wildcard อื่น: _ (Underscore) = ตัวอักษรเดี่ยว 1 ตัว เช่น '2_' จะจับ 2_1, 2_2 แต่ไม่จับ 21_1

ประสิทธิภาพ: LIKE 'prefix%' (ขึ้นต้นคงที่) ใช้ Index ได้ แต่ LIKE '%suffix' หรือ LIKE '%middle%' ใช้ Index ไม่ได้ ต้อง Full Table Scan