บทนำ
การค้นหาข้อมูลที่ตรงกับรูปแบบ (Pattern Matching) ใน MySQL ใช้ตัวดำเนินการ LIKE ร่วมกับตัวแทน (Wildcards):
%- แทนจำนวนตัวอักษรใดๆ (รวม 0 ตัว)_- แทนตัวอักษรเพียง 1 ตัว
ตัวอย่างการสร้างตารางและเพิ่มข้อมูล
mysql> CREATE TABLE DemoTable (
-> MonthName VARCHAR(100)
-> );
Query OK, 0 rows affected (0.63 sec)
mysql> INSERT INTO DemoTable VALUES('JFMA');
mysql> INSERT INTO DemoTable VALUES('JMA');
mysql> INSERT INTO DemoTable VALUES('JDN');
mysql> INSERT INTO DemoTable VALUES('JFOSA');
แสดงข้อมูลทั้งหมด
mysql> SELECT * FROM DemoTable;
ผลลัพธ์
+-----------+
| MonthName |
+-----------+
| JFMA |
| JMA |
| JDN |
| JFOSA |
+-----------+
4 rows in set (0.00 sec)
คำสั่งจับคู่ข้อความที่มี J ตามด้วย M
mysql> SELECT * FROM DemoTable WHERE MonthName LIKE '%J%M%';
ผลลัพธ์
+-----------+
| MonthName |
+-----------+
| JFMA |
| JMA |
+-----------+
2 rows in set (0.00 sec)
คำอธิบาย
รูปแบบ '%J%M%' หมายถึง ข้อความที่มีตัว 'J' อยู่ที่ไหนก็ได้ ตามด้วย 'M' อยู่ที่ไหนก็ได้ (อาจมีตัวอักษรอื่นๆ ระหว่างหรือนำหน้า/ต่อท้าย)