ใช้ CONCAT() รวมคอลัมน์หลายคอลัมน์ แล้วค่อยค้นหาด้วย LIKE
สร้างตารางและเพิ่มข้อมูล
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Value1 VARCHAR(10),
Value2 VARCHAR(10)
);
mysql> INSERT INTO DemoTable(Value1, Value2) VALUES
('10', '345'), ('14', '789'), ('18', '234');
ดูข้อมูล
mysql> SELECT * FROM DemoTable;
+----+--------+--------+
| Id | Value1 | Value2 |
+----+--------+--------+
| 1 | 10 | 345 |
| 2 | 14 | 789 |
| 3 | 18 | 234 |
+----+--------+--------+
ค้นหาแถวที่รวม Value1+Value2 มี '147'
mysql> SELECT * FROM DemoTable
-> WHERE CONCAT(Value1, Value2) LIKE '%147%';
ผลลัพธ์
+----+--------+--------+
| Id | Value1 | Value2 |
+----+--------+--------+
| 2 | 14 | 789 |
+----+--------+--------+
คำอธิบาย: แถวที่ 2 มี Value1='14' และ Value2='789' รวมกันได้ '14789' ซึ่งมี '147' อยู่ในตัว