【发布时间】:2019-05-17 18:29:16
【问题描述】:
我做了一个带有 MATCH AGAINST 的 MySQL 语句。我不习惯用这个功能,但是看起来很简单。
但是当我使用这个查询时:
SELECT productnaam,
productomschrijving,
MATCH (productnaam, productomschrijving) AGAINST('Kop van Jut'),
MATCH (productnaam, productomschrijving) AGAINST('Springkussen')
FROM product
WHERE product.productid in (508, 578)
我真的不明白为什么“Kop van Jut”的值没有大于零。我也尝试过使用双引号、加号等。没有任何效果。
谁能告诉我我做错了什么?
【问题讨论】:
-
因为你匹配的是
MATCH (productomschrijving, productomschrijving) AGAINST('Kop van Jut'),而不是MATCH (productnaam, productomschrijving) AGAINST('Kop van Jut'), -
不,抱歉。那是我的错误;我已经尝试了很多东西。而且:SELECT productnaam, productomschrijving, MATCH (productnaam, productomschrijving) AGAINST('+"Kop van Jut"'), MATCH (productnaam, productomschrijving) AGAINST('+"Springkussen"') FROM product WHERE product.productid in (508 , 578) 给出相同的结果。
-
你的表是 MyISAM 还是 InnoDB?
-
@Nick 是 MyISAM。
标签: mysql match-against