全文搜索的问题

下面2种创建INDEX的方法
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
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