【发布时间】:2015-07-12 00:58:14
【问题描述】:
我正在尝试创建一个简化的搜索框,它将多个列与用户输入的一个或多个关键字进行匹配。以下代码是我尝试使用 MySQL 的MATCH/AGAINST。但是,当指定了两列时,我无法正确执行查询,在本例中为“主题,国家”。当我将代码作为“国家”或“主题”运行时,它将执行,但不能同时运行。
这有什么秘密吗?
SELECT * ,
MATCH (
topic, country
)
AGAINST (
'China'
) AS score
FROM reports2
WHERE MATCH (
topic, country
)
AGAINST (
'China'
)
ORDER BY score DESC
产量:
#1191 - Can't find FULLTEXT index matching the column list
我发现这是对错误的不准确描述,因为这两个都有 FULLTEXT 索引。为了做到这一点,我什至复制了表,将其从 INNODB 转换为 MyISAM。
任何建议将不胜感激。
【问题讨论】:
标签: mysql