我正試圖爲一個帶有幾個字段的MySQL數據庫實現一個非常快速的搜索引擎。什麼是在MySQL中進行多字段搜索的最快方式?
這個問題依賴於我需要將一個值(關鍵字)與幾個字段相匹配的事實,例如%like方法。
我不介意相關性(訂單是固定的),只是表現。查詢非常複雜(多個JOINS,每個查詢3或4個表)。
起初我想到了MATCH ...反對,但我認爲製作這麼多FULLTEXT索引不是一個好主意。也許用PHP生成的或LIKE%值%,但是......它真的很有效嗎?
任何想法?
我正試圖爲一個帶有幾個字段的MySQL數據庫實現一個非常快速的搜索引擎。什麼是在MySQL中進行多字段搜索的最快方式?
這個問題依賴於我需要將一個值(關鍵字)與幾個字段相匹配的事實,例如%like方法。
我不介意相關性(訂單是固定的),只是表現。查詢非常複雜(多個JOINS,每個查詢3或4個表)。
起初我想到了MATCH ...反對,但我認爲製作這麼多FULLTEXT索引不是一個好主意。也許用PHP生成的或LIKE%值%,但是......它真的很有效嗎?
任何想法?
A FULLTEXT
索引 - 可能只是一個跨越你要查詢的所有列 - 可能是你最好的選擇。我想象一下,mySQL能夠在這方面應用更好的優化,而且速度更快,而不是過多的陳述。
LIKE肯定會花費大量的時間 – nik 2010-08-12 10:44:53