เราได้เห็นคำสั่ง MySQL SELECT เพื่อดึงข้อมูลจากตาราง MySQL นอกจากนี้เรายังสามารถใช้ประโยคเงื่อนไขที่เรียกว่าคำสั่ง WHERE เพื่อเลือกระเบียนที่ต้องการได้
ส่วนคำสั่ง WHERE ที่มีเครื่องหมาย 'เท่ากับ' (=) ทำงานได้ดีในที่ที่เราต้องการจับคู่แบบตรงทั้งหมด เช่นถ้า "tutorial_author ='Sanjay'" แต่อาจมีข้อกำหนดที่เราต้องการกรองผลลัพธ์ทั้งหมดที่ชื่อ tutorial_author ควรมี "jay" สิ่งนี้สามารถจัดการได้โดยใช้ตัวดำเนินการ MySQL LIKE พร้อมกับส่วนคำสั่ง WHERE
หากใช้ตัวดำเนินการ MySQL LIKE โดยไม่มีอักขระตัวแทน ตัวดำเนินการ LIKE จะเหมือนกับเครื่องหมายเท่ากับพร้อมกับส่วนคำสั่ง WHERE
ตัวอย่าง
mysql> Select * from Student Where Name LIKE 'Harshit'; +------+---------+---------+----------+--------------------+ | Id | Name | Address | Subject | year_of_admission | +------+---------+---------+----------+--------------------+ | 15 | Harshit | Delhi | Commerce | 2009 | +------+---------+---------+----------+--------------------+ 1 row in set (0.00 sec) mysql> Select * from Student Where Name = 'Harshit'; +------+---------+---------+----------+--------------------+ | Id | Name | Address | Subject | year_of_admission | +------+---------+---------+----------+--------------------+ | 15 | Harshit | Delhi | Commerce | 2009 | +------+---------+---------+----------+--------------------+ 1 row in set (0.00 sec)
นอกเหนือจากความแตกต่างของการมีอักขระตัวแทน % และ _ แล้ว มีความแตกต่างที่สำคัญระหว่างตัวดำเนินการ LIKE และ =คือตัวดำเนินการ LIKE จะไม่ละเว้นช่องว่างต่อท้าย ในขณะที่ตัวดำเนินการ =จะไม่สนใจช่องว่างต่อท้าย
ตัวอย่าง
mysql> Select * from Student Where Name = 'Harshit '; +------+---------+---------+----------+--------------------+ | Id | Name | Address | Subject | year_of_admission | +------+---------+---------+----------+--------------------+ | 15 | Harshit | Delhi | Commerce | 2009 | +------+---------+---------+----------+--------------------+ 1 row in set (0.00 sec) mysql> Select * from Student Where Name LIKE 'Harshit '; Empty set (0.00 sec)