我想根据一个人的全名(第一,中间和最后一个)进行实时搜索。如果一个人搜索约翰刘易斯莫里斯"查询应该返回" John lewis Morris"。
的愿望结果现在我的数据库中不需要中间名字段。因此,一个人可以拥有名字和姓氏,而另一个人可以拥有名字,中间名和姓氏。 这是我的问题:
"Select * form person where CONCAT(first,' ',middle,' ',last) LIKE $_POST['searchValue'] OR first LIKE $_POST['searchValue'] OR middle LIKE $_POST['searchValue'] OR last $_POST['searchValue']";
当我按名字/中间名/姓氏搜索时,它会返回可用的记录。但如果我先搜索(John Doe),它就不会返回任何内容。如果我也通过第一个,中间个和最后一个(John Amos Doe)进行搜索,它什么也不返回。
我有这种感觉,问题来自我的查询。我如何让这个工作。我使用JQuery Ajax函数进行实时搜索。如果需要更多解释,请告诉我。
注意:在我只搜索名字和名字之前,它完美无缺。 这是我的询问:
"Select * form person where CONCAT(first,' ',middle,' ',last) LIKE $_POST['searchValue']";