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

วิธีค้นหาข้อมูลที่มีสตริงเฉพาะในคอลัมน์ MySQL ด้วย LIKE

การใช้งาน LIKE Operator สำหรับการค้นหาข้อความ

เมื่อต้องการค้นหาแถวข้อมูลที่มีสตริงเฉพาะอยู่ในคอลัมน์ ให้ใช้ operator LIKE ร่วมกับ wildcard %

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

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

ตัวอย่างการสร้างตารางและข้อมูลทดสอบ

mysql> CREATE TABLE PatternDemo (
    -> Id INT,
    -> Name VARCHAR(100),
    -> Age INT
    -> );
Query OK, 0 rows affected (0.97 sec)

mysql> INSERT INTO PatternDemo VALUES(1,'James',23);
mysql> INSERT INTO PatternDemo VALUES(2,'Joseph',21);
mysql> INSERT INTO PatternDemo VALUES(3,'Robert',20);
mysql> INSERT INTO PatternDemo VALUES(4,'John',26);
mysql> INSERT INTO PatternDemo VALUES(5,'Richard',24);

แสดงข้อมูลทั้งหมด

mysql> SELECT * FROM PatternDemo;
+------+---------+------+
| Id   | Name    | Age  |
+------+---------+------+
| 1    | James   | 23   |
| 2    | Joseph  | 21   |
| 3    | Robert  | 20   |
| 4    | John    | 26   |
| 5    | Richard | 24   |
+------+---------+------+
5 rows in set (0.00 sec)

ค้นหาชื่อที่มีตัวอักษร "Jo"

mysql> SELECT * FROM PatternDemo WHERE Name LIKE '%Jo%';
+------+--------+------+
| Id   | Name   | Age  |
+------+--------+------+
| 2    | Joseph | 21   |
| 4    | John   | 26   |
+------+--------+------+
2 rows in set (0.00 sec)

คำอธิบาย: ตัวแปร % แทนตัวอักษรจำนวนใดก็ได้ (รวมถึง 0 ตัว) ดังนั้น %Jo% จะค้นหาข้อความที่มี "Jo" อยู่ตรงกลาง 最初 หรือท้ายก็ได้