我沒有非常非常實驗的索引,所以這就是爲什麼我問這個愚蠢的問題。我像遍地搜索,但我沒有得到明確的答案。我可以在全文搜索中使用2個不同的索引嗎?
我將有一個表items
的列:id
,name
,category
,price
這裏將是3個指標:
id
- 主鍵索引name
- 全文索引category,price
- 複合I ndex
我估計我將來會得到700.000-1.000.00行。
我需要做一個fulltext
搜索name
和category
是一個指定的類別和順序price
。
所以我的查詢將是這樣的:
SELECT * FROM items
WHERE MATCH(name) AGAINST(‘my search’) and category='my category' order by price
我的問題是: 多少索引將被用於執行此搜索?
它會使用2個索引?
[全文索引] & [類別,價格]指數 - 將獲得字詞的搜索結果,然後將使用下一個指數,以配合我category
和price
爲了
它將使用1個指數
[全文索引]僅 - 將獲得字詞的搜索結果,但之後將不得不手動匹配我的category
和price
爲了
我希望我的查詢速度很快,您有什麼意見?我知道fulltext search
速度很快,但是如果我應用子類和價格訂單等子句會發生什麼?會一樣快嗎?
如果只使用1個索引,後面的分類和價格會不會很慢? – PHPCore
不像執行兩個查詢那麼慢。一百萬條記錄非常小。所以我不會爲此擔心。 – Namphibian