一般数据库进行多字段模糊查询的时候是这样的:
select * from table where name like '%xxx%' or sex like '%xxx%' or phone like '%xxx%'
这样数据库执行起来效率十分低下,一个两个字段还好,一旦需要模糊查询的字段比较多的时候,问题就会出现,同时,开发人员需要拼接多个like
更好的办法:
在mysql中可以使用concat函数,将多个字段先拼接起来,然后再进行like的模糊匹配,这种就相当于前台一个输入框可以同时搜索姓名,性别,电话。
select * from Table1 where concat(name,sex,phone) like '%xxx%'