【发布时间】:2012-02-03 22:13:52
【问题描述】:
TABLE ITEMS: (id, name)
1| chicken
2| potato
查询:
select * from items where match(name) against('tato');
正在返回一个空集。我是否错过了解 match against 的工作原理?
【问题讨论】:
TABLE ITEMS: (id, name)
1| chicken
2| potato
查询:
select * from items where match(name) against('tato');
正在返回一个空集。我是否错过了解 match against 的工作原理?
【问题讨论】:
尝试使用:
SELECT * FROM items
WHERE INSTR(name, 'tato') > 0
或
SELECT * FROM items
WHERE name LIKE '%tato'
您使用的语法似乎是正确的;您是否在该字段上启用了全文?
ALTER TABLE items ADD FULLTEXT(name);
【讨论】:
我认为 FULLTEXT 索引不支持部分单词匹配。对于这样的事情,你最好使用 Marco 描述的结构之一。
【讨论】: