我正在使用PDO在搜索結果中搜索MySQL表。我的查詢看起來像這樣如何將MySQL搜索結果排序爲相關性?
$sql = "SELECT * FROM users WHERE username LIKE :username OR name LIKE :name ORDER BY uniqueid DESC LIMIT 6";
$stmt = $conn->prepare($sql);
$stmt->bindValue(':username', '%'.$query.'%');
$stmt->bindValue(':name', $query.'%');
我試圖做到的是,在我的結果數組,結果符合這樣說:
$query.'%'
結果之前,應該會出現匹配像這樣的:
'%'.$query.'%'
有沒有一種方法來排序結果通過這種相關性沒有兩個查詢,最好在純SQL?
獅身人面像使用該搜索檢索EN gine,並且您可以輕鬆設置按相關性進行排序,因爲相關性搜索結果是由點擊鏈接排序。 – Naumov
試試這個。改變查詢中的順序:** $ SQL =「SELECT * FROM users WHERE username LIKE:username OR name LIKE:name ORDER BY name LIKE:name DESC,uniqueid DESC LIMIT 6」; ** –