我建立了一个搜索用户系统,用户的名字或电子邮件搜索用户,但问题是如果我输入用户的全名,它不搜索它,而且我也无法查询。我使用此查询从名字和电子邮件中获取用户。
"select * from users_profile where fname like '%$q%' or Email like '%$q%' order by rand() LIMIT 10"
但如何从第一个和第二个名称获取用户。假设我输入"john"
它会给出完整的结果,例如john doe
,但如果我输入全名,例如john doe
,则不会给出任何结果。在我的数据库中,first name
由fname
表示,last name
由lname
表示。你帮忙吗?
答案 0 :(得分:2)
您可以使用mysql CONCAT函数连接第一个和第二个名称,然后搜索结果,如下所示:
select * from users_profile where CONCAT(fname,' ',lname) like '%$q%'
应该做你想做的事。