实时搜索名字,中间名和姓氏

我想根据一个人的全名(第一,中间和最后一个)进行实时搜索。 如果一个人搜索“John lewis Morris”,该查询应返回“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']";