错误代码:1064语法错误,意外的$ end,预期为FTS_TERM或FTS_NUMB或'*'MYSQL

时间:2018-12-17 13:04:35

标签: mysql mysqli innodb

我试图在我的innoDB表上运行以下查询并得到错误。

查询:

SELECT `Job`.`id`, `Job`.`job_description`, `Job`.`job_title`,
       `Company`.`name`, `Company`.`url`
FROM `jobs` AS `Job` 
    LEFT JOIN `companies` AS `Company` ON (`Company`.`id` = `Job`.`company_id` 
        AND `Job`.`company_id` = `Company`.`id`) 
WHERE `Job`.`status` = 1 
AND `Company`.`status` = 1
AND ( MATCH(`Job`.`job_title`) AGAINST ('*' IN NATURAL LANGUAGE MODE) )
ORDER BY `Job`.`id` ASC LIMIT 20

错误:

Error Code: 1064
syntax error, unexpected $end, expecting FTS_TERM or FTS_NUMB or '*'

感谢您的帮助。 预先感谢。

1 个答案:

答案 0 :(得分:1)

AGAINST('*' ...)无效。全文希望看到单词,而不是孤立的通配符。

如果这来自数据输入,并且用户要求“查看所有内容”,则为此构造一个不同查询。看起来可能一样,但省略了MATCH行。