我正在尝试运行这样的简单查询:
SELECT *,
MATCH(`col1`,`col2`)
AGAINST ('some text') AS score
FROM `mytable` ORDER BY score DESC
这总是给出错误:
#1191 - Can't find FULLTEXT index matching the column list
但是,如果我拆分列并执行两个这样的查询:
SELECT *,
MATCH(`col1`)
AGAINST ('some text') AS score
FROM `mytable` ORDER BY score DESC
和:
SELECT *,
MATCH(`col2`)
AGAINST ('some text') AS score
FROM `mytable` ORDER BY score DESC
然后就可以了。为什么我不能同时匹配两列?我在手册上看到一个例子,几乎完全一样是这样的:
mysql> SELECT id, body, MATCH (title,body) AGAINST
-> ('Security implications of running MySQL as root') AS score
-> FROM articles WHERE MATCH (title,body) AGAINST
-> ('Security implications of running MySQL as root');