所以,我从未使用过这么大的数据库。我们正在谈论我希望能够搜索的200.000.000 ++个单词。我该怎么办呢?使用正常的“where”语句需要10 +++分钟,我应该拆分数据库还是什么?
任何帮助都会很棒!
答案 0 :(得分:1)
MySQL FULLTEXT
索引非常有用。您必须将包含相关文本/字符串的字段定义为索引。然后你可以使用
SELECT * FROM table WHERE MATCH (text_index_field) AGAINST ('what you need to look for');
答案 1 :(得分:1)
您应该使用MySql FULLTEXT
索引。
使用AlTER TABLE
在您想要的列上创建FULLTEXT
索引。
和http://dev.mysql.com/doc/refman/5.1/en/alter-table.html
全文索引只能用于MyISAM表。 (在MySQL 5.6及更高版本中,它们也可以与InnoDB表一起使用。)只能为CHAR,VARCHAR或TEXT列创建全文索引。