我有一张这样的桌子
name | surname | email | tel
Edwin | Williams | edwin@aa.com | 123456
Luke | Evan | luke@bb.com | 987456我需要搜索"Edwin Williams“或"Williams Edwin”作为相同的。
我试过了
CONCAT_WS (' ', name, surname, email, email2) LIKE '%".addslashes($_POST['search'])."%'
OR
CONCAT_WS (' ', surname, name, email, email2) LIKE '%".addslashes($_POST['search'])."%'但我不喜欢它,在我搜索"123456埃德温“我没有找到任何东西。
我在InnoDb中有表格,我不喜欢使用MyISAM全文。
发布于 2017-09-12 22:21:17
我认为你想要:
WHERE CONCAT_WS(' ', name, surname, email, email2, tel) REGEXP REPLACE(CONCAT('%', $_POST['search'], '%'), ' ', '|')你想要一个竖线来表示正则表达式的"OR“。
https://stackoverflow.com/questions/46178818
复制相似问题