我有以下表格:
------------------------
| uid | attrvalue |
------------------------
| 1 | Spray |
| 2 | strong |
| 3 | very strong |
| 999 | Creme |
------------------------
现在我在PHP中有一个查询,并希望找到所有查询所在的所有行。
SELECT * FROM attrtable WHERE MATCH (attrvalue) AGAINST ('Spray+very+strong' IN BOOLEAN MODE);
我喜欢它只找到第1行和第3行。但结果是1 2 3。
因此,查找表行中的所有单词或单词组合是很重要的。查询不包含表中没有的单词或组合单词(我首先检查这一点)。
只使用LIKE
,但与您可能习惯的相反。
select query
from table1
where 'attrvalue' like concat(query,'%')
order by length(query) desc
limit 1