名と名前に基づいて検索を行う検索クエリを作成しています。クエリは次のようになります。
select fname,lname
from users
where fname like fname like '%$name%' or lname like '%$name%';
ユーザーが検索ボックスに名前と名前を入力すると、「スペース」で展開され、クエリは次のようになります。
select fname,lname
from users
where fname like fname like '%$f_name%' or lname like '%$l_name%';
2番目のクエリでJohnThomasと入力すると、名前にJohnまたはThomasが含まれるすべてのレコードが表示されますが、実際の検索結果、つまりJohn Thomas(完全一致)は結果のどこかにあります(100の場合)結果は60番目の位置になります)。
これを達成するためにクエリを変更するにはどうすればよいですか、それともプログラムで処理する必要がありますか?つまり、結果の配列をチェックし、チェックボックスの値と一致してその存在を確認し、最初に表示します。