【发布时间】:2013-07-20 15:29:49
【问题描述】:
我刚刚在我的 MySQL 数据库上设置了全文索引,但不幸的是它没有返回任何结果。
这似乎是一个常见问题,典型的答案是使用 MyISAM 引擎和“IN BOOLEAN MODE”功能。好吧,这些似乎都不适合我。
这是我的示例代码:
DROP TABLE IF EXISTS parentregionlist;
CREATE TABLE parentregionlist
(
RegionID INT NOT NULL,
RegionType VARCHAR(50),
RelativeSignificance VARCHAR(3),
SubClass VARCHAR(50),
RegionName VARCHAR(255),
RegionNameLong VARCHAR(510),
ParentRegionID INT,
ParentRegionType VARCHAR(50),
ParentRegionName VARCHAR(255),
ParentRegionNameLong VARCHAR(510),
CountryCode VARCHAR(2),
TimeStamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (RegionID),
FULLTEXT (RegionNameLong)
) ENGINE = MyISAM;
INSERT INTO parentregionlist
VALUES (575,
"City",
"",
"",
"Birmingham",
"Birmingham, England, United kingdom",
6023342,
"Multi-City (Vicinity)",
"Birmingham (and Vicinity)",
"Birmingham (and vicinity), England, United Kingdom",
"",
now());
SELECT *
FROM parentregionlist
WHERE MATCH(regionnamelong)
AGAINST ('Birm' IN BOOLEAN MODE);
有什么想法吗?
附:在真实表中,我有 200k+ 行。我知道搜索不会只使用一行,这只是一个示例。
【问题讨论】:
标签: mysql full-text-search full-text-indexing