ใช้ LIKE พร้อมอีสเคป \_ หรือใช้ REGEXP
สร้างตารางและข้อมูล
mysql> create table DemoTable ( ClientId varchar(200) ); Query OK, 0 rows affected (0.79 sec)
mysql> insert into DemoTable values('CLI_101'); Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('CLI1110'); Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('_CLI102'); Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('CLI103_'); Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('CLI1111'); Query OK, 1 row affected (0.16 sec)
ข้อมูลทั้งหมด
mysql> select * from DemoTable;
+----------+ | ClientId | +----------+ | CLI_101 | | CLI1110 | | _CLI102 | | CLI103_ | | CLI1111 | +----------+
วิธีที่ 1: ใช้ LIKE พร้อม escape
mysql> select * from DemoTable where ClientId LIKE '%\_%';
+----------+ | ClientId | +----------+ | CLI_101 | | _CLI102 | | CLI103_ | +----------+
วิธีที่ 2: ใช้ REGEXP
mysql> select * from DemoTable where ClientId REGEXP '_';
+----------+ | ClientId | +----------+ | CLI_101 | | _CLI102 | | CLI103_ | +----------+
ใน LIKE ต้องใช้ \_ เพราะ _ เป็น wildcard แทนตัวอักษรเดี่ยว