這個問題可能看起來很幼稚。 我不想一個人獨自一人到達這家大公司的力量。MySQL搜索自動完成喜歡亞馬遜
問題:當你去http://www.amazon.com嘗試搜索「哈利波特」,而是輸入:「哈利波特」。
你會看到這樣的結果:
- 哈利波特
- 在書籍哈利波特 在電影&
- 哈利·波特電視
,問題是,我有一個巨大的帶有產品的MySQL數據庫。如何在其上實現這樣的搜索結果?
我知道Apache Lucene,但我想知道是否有更簡單的方法。
這個問題可能看起來很幼稚。 我不想一個人獨自一人到達這家大公司的力量。MySQL搜索自動完成喜歡亞馬遜
問題:當你去http://www.amazon.com嘗試搜索「哈利波特」,而是輸入:「哈利波特」。
你會看到這樣的結果:
,問題是,我有一個巨大的帶有產品的MySQL數據庫。如何在其上實現這樣的搜索結果?
我知道Apache Lucene,但我想知道是否有更簡單的方法。
提交/ 1)記錄搜索字詞使用當前的數據庫 - resturucture的數據來優化關鍵字搜索
2)添加的onkeyup處理程序發送一個Ajax請求的服務器端(但使用一個互斥體,所以您只需一個電話同時優秀)
3)服務器端做對數據的關鍵詞查找1,並返回matchnig數據
4)當AJAX調用返回一個div中新添加的行作爲一個可點擊的條目層
這有什麼困難?你可以使用你喜歡的任何類型的數據庫。您可以使用任何您喜歡的服務器端編程語言。 Browserside你應該堅持javascript。
(如果你希望別人寫的代碼給你,那麼你可能需要向他們支付)
感謝您的回覆,但是您列出的不幸並不是我的問題。 halfer提到的'全文搜索'似乎是解決方案。我去研究它。 – DelphiLynx
MySQL的FULLTEXT搜索是非常非常有限 - 去研究如何做一個適當的關鍵字搜索。 – symcbean
周圍做「全文搜索」和「模糊匹配搜索」一番尋找 - 他們應該幫助你。你在用什麼語言(請相應標記)? – halfer
[this]的可能重複(http://stackoverflow.com/questions/3208743/php-fuzzy-search-matching)? – halfer
@halfer,感謝您對全文搜索的建議。這似乎是要走的路。還有問題,亞馬遜是否使用MySQL MATCH()函數或更復雜的東西來進行全文搜索? – DelphiLynx