我正在尝试使用MATCH ... AGAINST
WHERE
子句过滤一些数据。但我收到以下错误:
找不到与列列表匹配的 FULLTEXT 索引
这是我执行的查询:
SELECT PAR.idPartij,
PAR.Partijnaam,
PRO.Productnaam,
PER.Perceel,
R.Ras,
PAR.TagNR
FROM Partij AS PAR
LEFT OUTER JOIN Product AS PRO ON PAR.idProduct = PRO.idProduct
LEFT OUTER JOIN Ras AS R ON PAR.idRas = R.idRas
LEFT OUTER JOIN Klasse AS K ON PAR.idKlasse = K.idKlasse
LEFT OUTER JOIN Perceel AS PER ON PAR.idPerceel = PER.idPerceel
LEFT OUTER JOIN Maat AS M ON PAR.idMaat = M.idMaat
LEFT OUTER JOIN Teler AS T ON PAR.idTeler = T.idTeler
LEFT OUTER JOIN Handelshuis AS H ON PAR.idHandelshuis = H.idHandelshuis
LEFT OUTER JOIN Behandeling AS BH ON PAR.idBehandeling = BH.idBehandeling
WHERE PAR.Actief <> 0
AND (
MATCH(PAR.idPartij) AGAINST ('%1423%' IN BOOLEAN MODE)
OR MATCH(PAR.Partijnaam) AGAINST ('%1423%' IN BOOLEAN MODE)
OR MATCH(PRO.Productnaam) AGAINST ('%1423%' IN BOOLEAN MODE)
OR MATCH(PER.Perceel) AGAINST ('%1423%' IN BOOLEAN MODE)
OR MATCH(R.Ras) AGAINST ('%1423%' IN BOOLEAN MODE)
OR MATCH(PAR.TagNR) AGAINST ('%1423%' IN BOOLEAN MODE)
)
ORDER BY PAR.idPartij
如您所见,我是否使用IN BOOLEAN MODE
内部来克服Dan GrossmanAGAINST
所说的这个问题,但它不起作用。
我错过了什么还是我做错了什么?
附带说明一下,选择(以及 MATCH 部分)是在 PHP 中动态创建的