我有一個複雜的查詢,並根據搜索關鍵字從數據庫中提取數據。我寫了兩個查詢來通過連接兩個表來獲取基於關鍵字的數據。每個表格包含超過5百萬條記錄。但問題是,這個查詢需要5-7秒的時間才能運行,因此頁面需要更多時間才能運行。查詢如下:我如何使查詢更快
SELECT DISTINCT(`general_info`.`company_name`),
general_info.*
FROM general_info
INNER JOIN `financial_info`
ON `financial_info`.`reg_code` = `general_info`.`reg_code`
WHERE (`financial_info`.`type_of_activity` LIKE '%siveco%'
OR `general_info`.`company_name` LIKE '%siveco%'
OR `general_info`.`reg_code` LIKE '%siveco%')
任何時候當你試圖做'LIKE'%word%''時,你將會有多餘的性能 – Kermit 2014-09-23 15:35:48
其他想法:[MySQL全文搜索功能](http://dev.mysql.com/doc/refman/5.0/ en/fulltext-search.html)或NoSQL與MapReduce。 – DanFromGermany 2014-09-23 15:41:56