php – 在表的多个字段中搜索字符串

我有一个表User,其中包含字段(id,first_name,middle_name,last_name).

我想写一个查询来查找他的名字的用户.名称可以是名字,中间名或姓氏.

$sql = "SELECT * FROM user 
        WHERE first_name like '%$name%' OR  
              middle_name like '%$name%' OR
              last_name like '%$name%'";

这是有效的查询吗?
(暂时保留安全问题.)
最佳答案
更改表并在First_name,second_name,last_name上添加复合全文索引,然后使用此查询

select * 
from table_name 
where match (`First_name`,`second_name`,`last_name`) against('name')

它比你的查询快得多.

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。