3
計數和訂單的結果我有這樣的查詢:PHP MySQL的發現,通過計數
$sql = "SELECT *
FROM global_info
WHERE title LIKE '%$string%'
OR tag LIKE '%$string%'
OR body LIKE '%$string%'";
我怎麼能算結果的每一行的號碼,然後根據計數結果進行排序?
例如 行1:
標題:
Adricatic海尼斯照片
身體:
這是我和我的朋友在亞得里亞海海,在黑山的某個地方。 阿德里奇海的顏色是驚人的。
標籤:
亞得里亞海,照片
行2:
標題:
Adricatic海
身體:
採取中午
標籤:
亞得里亞海,照片
而且有人搜索:
亞得里亞海照片
行1比2行更多的成果,這將是在查詢結果中的首位。
實際上,在給定的示例數據中沒有搜索到'LIKE'%adriatic sea photo%''的結果,因爲沒有一列顯示包含該確切短語。 – 2012-03-12 15:35:38
不知道是否可能在PHP以外(僅在sql查詢中),但可以使用php count()並檢查每個類別中選擇了多少結果。 – 2012-03-12 15:37:14
您最好使用FULLTEXT索引並按相關分數排序。你想通過LIKE比較會導致醜陋的查詢。 – 2012-03-12 15:40:56