全文搜索的问题
下面2种创建INDEX的方法
SQL code
和
SQL code
哪一个运行速度更快?如果用第一种方法,查询语句是否变成这样?
SQL code
谢谢。
SQL code
CREATE FULLTEXT INDEX myindex_1 ON table_1 (title,content) CREATE FULLTEXT INDEX myindex_2 ON table_2 (title,content)
和
SQL code
alter table table_1 add index title(title) alter table table_2 add index title(title) alter table table_1 add index content(content) alter table table_1 add index content(content)
哪一个运行速度更快?如果用第一种方法,查询语句是否变成这样?
SQL code
SELECT title,content,date FROM table_1 WHERE MATCH myindex_1 AGAINST ('+$Search' IN BOOLEAN MODE)) UNION (SELECT title,content,date FROM table_2 WHERE MATCH myindex_2 AGAINST ('+$Search' IN BOOLEAN MODE)) Order By date DESC
谢谢。
作者: changjay 发布时间: 2011-05-20
问题已升级,劳驾大虾们帮忙看下。谢谢。
作者: changjay 发布时间: 2011-05-23
第一种是全文索引 第一种是普通B树索引
作者: rucypli 发布时间: 2011-05-23
在my php admin里使用了第一种语句之后,提示成功,但是没看到表有什么变化。到底算成功了吗?
查询语句是什么呢?
是 MATCH myindex_1 还是依旧是 MATCH (title, content)?
另外:如果新建表的话,是不是语句是这样?谢谢。
SQL code
查询语句是什么呢?
是 MATCH myindex_1 还是依旧是 MATCH (title, content)?
另外:如果新建表的话,是不是语句是这样?谢谢。
SQL code
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; CREATE TABLE IF NOT EXISTS `table_1` ( `id` bigint(20) UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, `title` text collate utf8_unicode_ci NOT NULL, `content` text collate utf8_unicode_ci NOT NULL, `date` varchar(10) collate utf8_unicode_ci NOT NULL, FULLTEXT KEY `myindex_1` (`title`,`content`,`date`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;
作者: changjay 发布时间: 2011-05-23