ได้ครับ สามารถรวม IN และ LIKE ใน MySQL ได้โดยใช้ LIKE ร่วมกับ OR operator
สร้างตารางตัวอย่าง
mysql> create table DemoTable (
-> SubjectTitle text
-> );
Query OK, 0 rows affected (0.68 sec)
เพิ่มข้อมูลตัวอย่าง
mysql> insert into DemoTable values('Introduction To MySQL');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('Java in Depth');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('Coding with Python');
Query OK, 1 row affected (0.54 sec)
mysql> insert into DemoTable values('C++ in Depth');
Query OK, 1 row affected (0.17 sec)
แสดงข้อมูลทั้งหมด
mysql> select * from DemoTable;
ผลลัพธ์
+-----------------------+ | SubjectTitle | +-----------------------+ | Introduction To MySQL | | Java in Depth | | Coding with Python | | C++ in Depth | +-----------------------+ 4 rows in set (0.00 sec)
คำสั่งใช้ LIKE และ OR ร่วมกัน
mysql> select * from DemoTable where SubjectTitle LIKE '%MySQL%' OR SubjectTitle LIKE 'C++%';
ผลลัพธ์
+-----------------------+ | SubjectTitle | +-----------------------+ | Introduction To MySQL | | C++ in Depth | +-----------------------+ 2 rows in set (0.00 sec)
คำอธิบาย: MySQL ไม่มี IN ร่วมกับ LIKE โดยตรง (เช่น WHERE col IN LIKE ('%A%', '%B%') ไม่ได้) ต้องแยกเป็นเงื่อนไข LIKE หลายอันแล้วเชื่อมด้วย OR