多字段或合并字段上的Mysql搜索

多字段或合并字段上的Mysql搜索,mysql,content-management-system,Mysql,Content Management System,我有两张桌子(简化): 页面数据有很多不同的值类型。我希望能够搜索所有这些。这种方法行吗 SELECT * FROM page_data WHERE value_text LIKE '%" . $keyword . "%' OR value_int = ".$keyword." OR .... OR .... 或者在page(或page_data)表中添加一个“search”字段,并将所有要搜索的数据合并成全文,会更好/更快吗?我不介意更慢的更新和更多的管理。我想要更快的搜索 任何帮助都将

我有两张桌子(简化):

页面数据有很多不同的值类型。我希望能够搜索所有这些。这种方法行吗

SELECT * FROM page_data WHERE 
value_text LIKE '%" . $keyword . "%' 
OR value_int = ".$keyword."
OR ....
OR ....
或者在page(或page_data)表中添加一个“search”字段,并将所有要搜索的数据合并成全文,会更好/更快吗?我不介意更慢的更新和更多的管理。我想要更快的搜索


任何帮助都将不胜感激

有一个包含许多列的表是可以的。但更多的列意味着更多的文件IO和较慢的搜索速度。我建议使用一个不同的表,引用大表和一个文本列,并使用布尔全文搜索,如下面的url中所述

全文搜索使搜索速度更快!另一种使用SphinxSearch(www.SphinxSearch.com)的方法是专门进行全文搜索

SELECT * FROM page_data WHERE 
value_text LIKE '%" . $keyword . "%' 
OR value_int = ".$keyword."
OR ....
OR ....