從MySQL表中生成超級相關結果的最佳方式是什麼?我有一個包含標題,說明和標籤的表格中的網站列表。我怎樣才能建立一個SELECT查詢/搜索功能在PHP會發現在所有這三個欄的用戶輸入的關鍵字,並同時保持儘可能快牢記以下幾點:在標題MySQL表中的相關搜索結果
- 比賽會是最相關的,但標題和描述顯然匹配/標籤會更加相關
- 匹配的標籤將是第二個最相關的
- 關鍵字可以按任意順序
- 不要求相匹配但如果所有的關鍵字不匹配,它可以匹配任何一個(我不知道這是否會導致呼叫速度太慢)
是否有我需要讓我的桌前的任何具體修改?
「自然的方法恕我直言將讓PHP移動通過記錄集,所以你可以通過記錄應用邏輯記錄。」 這絕對不是一個好方法。你失去了查詢緩存,你將所有的數據從數據庫轉移到每個頁面刷新刷新/無論觸發查詢。 – kubal5003 2009-10-29 21:27:53
當然,你失去了緩存。爲了某些目的,這是可以的。通常不是。一個常見的解決方案是製作一個「結果」表。該表必須包含會話ID的額外字段,因此每個最終用戶的結果是分開的。它很笨拙,但這就是HTTP的本質。使用算法的好處很大,這是一種非常普遍的方法。 – Smandoli 2009-10-30 14:45:17